From 27c15578bb8678ee8fc635052291e2c996c4a5e9 Mon Sep 17 00:00:00 2001 From: Aldrin Piri Date: Wed, 13 Jul 2016 09:28:19 -0400 Subject: [PATCH 01/12] Initial refactoring of ProvenanceEventRepository and introduction of ProvenanceRepository as service loaded component. --- .../provenance/ProvenanceEventRepository.java | 128 +------------- .../provenance/ProvenanceQueryableIndex.java | 108 ++++++++++++ nifi-assembly/pom.xml | 4 + nifi-framework-api/pom.xml | 32 ++++ .../nifi/provenance/ProvenanceRepository.java | 160 ++++++++++++++++++ nifi-mock/pom.xml | 4 + ...ory.java => MockProvenanceRepository.java} | 24 ++- .../org/apache/nifi/util/MockEventAccess.java | 1 - .../nifi-framework-core/pom.xml | 4 + .../nifi/controller/FlowController.java | 93 +++++----- .../nifi/controller/TestFlowController.java | 4 +- .../TestStandardProcessSession.java | 4 +- .../scheduling/TestProcessorLifecycle.java | 4 +- .../nifi-framework/nifi-nar-utils/pom.xml | 4 + .../org/apache/nifi/nar/ExtensionManager.java | 23 +-- .../nifi/nar/NarThreadContextClassLoader.java | 3 +- .../nifi-web/nifi-web-api/pom.xml | 5 + .../nifi/web/controller/ControllerFacade.java | 15 +- .../pom.xml | 4 + .../PersistentProvenanceRepository.java | 9 +- ...ache.nifi.provenance.ProvenanceRepository} | 0 .../pom.xml | 4 + .../VolatileProvenanceRepository.java | 10 +- ...ache.nifi.provenance.ProvenanceRepository} | 0 .../nifi/controller/MonitorMemoryTest.java | 4 +- nifi-nar-bundles/pom.xml | 6 + pom.xml | 6 + 27 files changed, 448 insertions(+), 215 deletions(-) create mode 100644 nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceQueryableIndex.java create mode 100644 nifi-framework-api/pom.xml create mode 100644 nifi-framework-api/src/main/java/org/apache/nifi/provenance/ProvenanceRepository.java rename nifi-mock/src/main/java/org/apache/nifi/provenance/{MockProvenanceEventRepository.java => MockProvenanceRepository.java} (81%) rename nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/resources/META-INF/services/{org.apache.nifi.provenance.ProvenanceEventRepository => org.apache.nifi.provenance.ProvenanceRepository} (100%) rename nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository/src/main/resources/META-INF/services/{org.apache.nifi.provenance.ProvenanceEventRepository => org.apache.nifi.provenance.ProvenanceRepository} (100%) diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceEventRepository.java b/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceEventRepository.java index 235a1fa11109..a44d1f33e92b 100644 --- a/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceEventRepository.java +++ b/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceEventRepository.java @@ -20,13 +20,6 @@ import java.util.List; import org.apache.nifi.authorization.AccessDeniedException; -import org.apache.nifi.authorization.Authorizer; -import org.apache.nifi.authorization.user.NiFiUser; -import org.apache.nifi.events.EventReporter; -import org.apache.nifi.provenance.lineage.ComputeLineageSubmission; -import org.apache.nifi.provenance.search.Query; -import org.apache.nifi.provenance.search.QuerySubmission; -import org.apache.nifi.provenance.search.SearchableField; import org.apache.nifi.web.ResourceNotFoundException; /** @@ -37,18 +30,6 @@ */ public interface ProvenanceEventRepository { - /** - * Performs any initialization needed. This should be called only by the - * framework. - * - * @param eventReporter to report to - * @param authorizer the authorizer to use for authorizing individual events - * @param resourceFactory the resource factory to use for generating Provenance Resource objects for authorization purposes - * - * @throws java.io.IOException if unable to initialize - */ - void initialize(EventReporter eventReporter, Authorizer authorizer, ProvenanceAuthorizableFactory resourceFactory) throws IOException; - /** * Returns a {@link ProvenanceEventBuilder} that is capable of building * {@link ProvenanceEventRecord}s @@ -91,21 +72,6 @@ public interface ProvenanceEventRepository { */ List getEvents(long firstRecordId, final int maxRecords) throws IOException; - /** - * Returns a List of all ProvenanceEventRecords in the - * repository starting with the given ID. The first ID in the repository - * will always be 0 or higher. Each event that is found will be authorized - * against the given NiFiUser. If the user does not have authorization for - * the event, the event will not be returned. - * - * @param firstRecordId id of the first record to retrieve - * @param maxRecords maximum number of records to retrieve - * @param user the NiFi user that the events should be authorized against - * - * @return records - * @throws java.io.IOException if error reading from repository - */ - List getEvents(long firstRecordId, final int maxRecords, NiFiUser user) throws IOException; /** * @return the largest ID of any event that is queryable in the repository. @@ -113,57 +79,6 @@ public interface ProvenanceEventRepository { */ Long getMaxEventId(); - /** - * Submits an asynchronous request to process the given query, returning an - * identifier that can be used to fetch the results at a later time - * - * @param query to submit - * @param user the NiFi User to authorize the events against - * - * @return an identifier that can be used to fetch the results at a later - * time - */ - QuerySubmission submitQuery(Query query, NiFiUser user); - - /** - * @param queryIdentifier of the query - * @param user the user who is retrieving the query - * - * @return the QueryResult associated with the given identifier, if the - * query has finished processing. If the query has not yet finished running, - * returns null - */ - QuerySubmission retrieveQuerySubmission(String queryIdentifier, NiFiUser user); - - /** - * Submits a Lineage Computation to be completed and returns the - * AsynchronousLineageResult that indicates the status of the request and - * the results, if the computation is complete. If the given user does not - * have authorization to view one of the events in the lineage, a placeholder - * event will be used instead that provides none of the event details except - * for the identifier of the component that emitted the Provenance Event. It is - * necessary to include this node in the lineage view so that the lineage makes - * sense, rather than showing disconnected graphs when the user is not authorized - * for all components' provenance events. - * - * @param flowFileUuid the UUID of the FlowFile for which the Lineage should - * be calculated - * @param user the NiFi User to authorize events against - * - * @return a {@link ComputeLineageSubmission} object that can be used to - * check if the computing is complete and if so get the results - */ - ComputeLineageSubmission submitLineageComputation(String flowFileUuid, NiFiUser user); - - /** - * @param lineageIdentifier identifier of lineage to compute - * @param user the user who is retrieving the lineage submission - * - * @return the {@link ComputeLineageSubmission} associated with the given - * identifier - */ - ComputeLineageSubmission retrieveLineageSubmission(String lineageIdentifier, NiFiUser user); - /** * Retrieves the Provenance Event with the given ID. The event will be returned only * if the given user is authorized to access the event. Otherwise, an @@ -176,38 +91,7 @@ public interface ProvenanceEventRepository { * @throws AccessDeniedException if the user does not have access to the component * @throws ResourceNotFoundException if the component that the event belongs to cannot be found */ - ProvenanceEventRecord getEvent(long id, NiFiUser user) throws IOException; - - /** - * Submits a request to expand the parents of the event with the given id. If the given user - * is not authorized to access any event, a placeholder will be used instead that contains only - * the ID of the component that emitted the event. - * - * @param eventId the one-up id of the Event to expand - * @param user the NiFi user to authorize events against - * @return a submission which can be checked for status - * - * @throws IllegalArgumentException if the given identifier identifies a - * Provenance Event that has a Type that is not expandable or if the - * identifier cannot be found - */ - ComputeLineageSubmission submitExpandParents(long eventId, NiFiUser user); - - /** - * Submits a request to expand the children of the event with the given id. If the given user - * is not authorized to access any event, a placeholder will be used instead that contains only - * the ID of the component that emitted the event. - * - * @param eventId the one-up id of the Event - * @param user the NiFi user to authorize events against - * - * @return a submission which can be checked for status - * - * @throws IllegalArgumentException if the given identifier identifies a - * Provenance Event that has a Type that is not expandable or if the - * identifier cannot be found - */ - ComputeLineageSubmission submitExpandChildren(long eventId, NiFiUser user); + ProvenanceEventRecord getEvent(long id) throws IOException; /** * Closes the repository, freeing any resources @@ -216,15 +100,5 @@ public interface ProvenanceEventRepository { */ void close() throws IOException; - /** - * @return a list of all fields that can be searched via the - * {@link #submitQuery(nifi.provenance.search.Query)} method - */ - List getSearchableFields(); - /** - * @return a list of all FlowFile attributes that can be searched via the - * {@link #submitQuery(nifi.provenance.search.Query)} method - */ - List getSearchableAttributes(); } diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceQueryableIndex.java b/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceQueryableIndex.java new file mode 100644 index 000000000000..e0ff44c159dd --- /dev/null +++ b/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceQueryableIndex.java @@ -0,0 +1,108 @@ +package org.apache.nifi.provenance; + +import org.apache.nifi.authorization.user.NiFiUser; +import org.apache.nifi.provenance.lineage.ComputeLineageSubmission; +import org.apache.nifi.provenance.search.Query; +import org.apache.nifi.provenance.search.QuerySubmission; +import org.apache.nifi.provenance.search.SearchableField; + +import java.util.List; + +/** + * Created by apiri on 11Jul2016. + */ +public interface ProvenanceQueryableIndex { + /** + * Submits an asynchronous request to process the given query, returning an + * identifier that can be used to fetch the results at a later time + * + * @param query to submit + * @param user the NiFi User to authorize the events against + * + * @return an identifier that can be used to fetch the results at a later + * time + */ + QuerySubmission submitQuery(Query query, NiFiUser user); + + /** + * @param queryIdentifier of the query + * @param user the user who is retrieving the query + * + * @return the QueryResult associated with the given identifier, if the + * query has finished processing. If the query has not yet finished running, + * returns null + */ + QuerySubmission retrieveQuerySubmission(String queryIdentifier, NiFiUser user); + + /** + * Submits a Lineage Computation to be completed and returns the + * AsynchronousLineageResult that indicates the status of the request and + * the results, if the computation is complete. If the given user does not + * have authorization to view one of the events in the lineage, a placeholder + * event will be used instead that provides none of the event details except + * for the identifier of the component that emitted the Provenance Event. It is + * necessary to include this node in the lineage view so that the lineage makes + * sense, rather than showing disconnected graphs when the user is not authorized + * for all components' provenance events. + * + * @param flowFileUuid the UUID of the FlowFile for which the Lineage should + * be calculated + * @param user the NiFi User to authorize events against + * + * @return a {@link ComputeLineageSubmission} object that can be used to + * check if the computing is complete and if so get the results + */ + ComputeLineageSubmission submitLineageComputation(String flowFileUuid, NiFiUser user); + + /** + * @param lineageIdentifier identifier of lineage to compute + * @param user the user who is retrieving the lineage submission + * + * @return the {@link ComputeLineageSubmission} associated with the given + * identifier + */ + ComputeLineageSubmission retrieveLineageSubmission(String lineageIdentifier, NiFiUser user); + + /** + * Submits a request to expand the parents of the event with the given id. If the given user + * is not authorized to access any event, a placeholder will be used instead that contains only + * the ID of the component that emitted the event. + * + * @param eventId the one-up id of the Event to expand + * @param user the NiFi user to authorize events against + * @return a submission which can be checked for status + * + * @throws IllegalArgumentException if the given identifier identifies a + * Provenance Event that has a Type that is not expandable or if the + * identifier cannot be found + */ + ComputeLineageSubmission submitExpandParents(long eventId, NiFiUser user); + + /** + * Submits a request to expand the children of the event with the given id. If the given user + * is not authorized to access any event, a placeholder will be used instead that contains only + * the ID of the component that emitted the event. + * + * @param eventId the one-up id of the Event + * @param user the NiFi user to authorize events against + * + * @return a submission which can be checked for status + * + * @throws IllegalArgumentException if the given identifier identifies a + * Provenance Event that has a Type that is not expandable or if the + * identifier cannot be found + */ + ComputeLineageSubmission submitExpandChildren(long eventId, NiFiUser user); + + /** + * @return a list of all fields that can be searched via the + * {@link ProvenanceQueryableIndex#submitQuery(Query, NiFiUser)} method + */ + List getSearchableFields(); + + /** + * @return a list of all FlowFile attributes that can be searched via the + * {@link ProvenanceQueryableIndex#submitQuery(Query, NiFiUser)} method + */ + List getSearchableAttributes(); +} diff --git a/nifi-assembly/pom.xml b/nifi-assembly/pom.xml index b7ef7d7bd55f..cc17de66cfb4 100644 --- a/nifi-assembly/pom.xml +++ b/nifi-assembly/pom.xml @@ -80,6 +80,10 @@ language governing permissions and limitations under the License. --> org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-runtime diff --git a/nifi-framework-api/pom.xml b/nifi-framework-api/pom.xml new file mode 100644 index 000000000000..5ece11b9adf8 --- /dev/null +++ b/nifi-framework-api/pom.xml @@ -0,0 +1,32 @@ + + + + 4.0.0 + + org.apache.nifi + nifi + 1.0.0-SNAPSHOT + + nifi-framework-api + jar + + + + org.apache.nifi + nifi-api + + + diff --git a/nifi-framework-api/src/main/java/org/apache/nifi/provenance/ProvenanceRepository.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/ProvenanceRepository.java new file mode 100644 index 000000000000..40cffbc8dae6 --- /dev/null +++ b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/ProvenanceRepository.java @@ -0,0 +1,160 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.nifi.provenance; + + +import org.apache.nifi.authorization.Authorizer; +import org.apache.nifi.authorization.user.NiFiUser; +import org.apache.nifi.events.EventReporter; +import org.apache.nifi.provenance.lineage.ComputeLineageSubmission; +import org.apache.nifi.provenance.search.Query; +import org.apache.nifi.provenance.search.QuerySubmission; +import org.apache.nifi.provenance.search.SearchableField; + +import java.io.IOException; +import java.util.List; + +public interface ProvenanceRepository extends ProvenanceEventRepository { + + /** + * Performs any initialization needed. This should be called only by the + * framework. + * + * @param eventReporter to report to + * @param authorizer the authorizer to use for authorizing individual events + * @param resourceFactory the resource factory to use for generating Provenance Resource objects for authorization purposes + * @throws java.io.IOException if unable to initialize + */ + void initialize(EventReporter eventReporter, Authorizer authorizer, ProvenanceAuthorizableFactory resourceFactory) throws IOException; + + + ProvenanceEventRecord getEvent(long id, NiFiUser user) throws IOException; + + /** + * Returns a List of all ProvenanceEventRecords in the + * repository starting with the given ID. The first ID in the repository + * will always be 0 or higher. Each event that is found will be authorized + * against the given NiFiUser. If the user does not have authorization for + * the event, the event will not be returned. + * + * @param firstRecordId id of the first record to retrieve + * @param maxRecords maximum number of records to retrieve + * @param user the NiFi user that the events should be authorized against + * @return records + * @throws java.io.IOException if error reading from repository + */ + List getEvents(long firstRecordId, final int maxRecords, NiFiUser user) throws IOException; + + /** + * @return the {@link ProvenanceEventRepository} backing this ProvenanceRepository + */ + ProvenanceEventRepository getProvenanceEventRepository(); + + /** + * Submits an asynchronous request to process the given query, returning an + * identifier that can be used to fetch the results at a later time + * + * @param query to submit + * @param user the NiFi User to authorize the events against + * + * @return an identifier that can be used to fetch the results at a later + * time + */ + QuerySubmission submitQuery(Query query, NiFiUser user); + + /** + * @param queryIdentifier of the query + * @param user the user who is retrieving the query + * + * @return the QueryResult associated with the given identifier, if the + * query has finished processing. If the query has not yet finished running, + * returns null + */ + QuerySubmission retrieveQuerySubmission(String queryIdentifier, NiFiUser user); + + /** + * Submits a Lineage Computation to be completed and returns the + * AsynchronousLineageResult that indicates the status of the request and + * the results, if the computation is complete. If the given user does not + * have authorization to view one of the events in the lineage, a placeholder + * event will be used instead that provides none of the event details except + * for the identifier of the component that emitted the Provenance Event. It is + * necessary to include this node in the lineage view so that the lineage makes + * sense, rather than showing disconnected graphs when the user is not authorized + * for all components' provenance events. + * + * @param flowFileUuid the UUID of the FlowFile for which the Lineage should + * be calculated + * @param user the NiFi User to authorize events against + * + * @return a {@link ComputeLineageSubmission} object that can be used to + * check if the computing is complete and if so get the results + */ + ComputeLineageSubmission submitLineageComputation(String flowFileUuid, NiFiUser user); + + /** + * @param lineageIdentifier identifier of lineage to compute + * @param user the user who is retrieving the lineage submission + * + * @return the {@link ComputeLineageSubmission} associated with the given + * identifier + */ + ComputeLineageSubmission retrieveLineageSubmission(String lineageIdentifier, NiFiUser user); + + /** + * Submits a request to expand the parents of the event with the given id. If the given user + * is not authorized to access any event, a placeholder will be used instead that contains only + * the ID of the component that emitted the event. + * + * @param eventId the one-up id of the Event to expand + * @param user the NiFi user to authorize events against + * @return a submission which can be checked for status + * + * @throws IllegalArgumentException if the given identifier identifies a + * Provenance Event that has a Type that is not expandable or if the + * identifier cannot be found + */ + ComputeLineageSubmission submitExpandParents(long eventId, NiFiUser user); + + /** + * Submits a request to expand the children of the event with the given id. If the given user + * is not authorized to access any event, a placeholder will be used instead that contains only + * the ID of the component that emitted the event. + * + * @param eventId the one-up id of the Event + * @param user the NiFi user to authorize events against + * + * @return a submission which can be checked for status + * + * @throws IllegalArgumentException if the given identifier identifies a + * Provenance Event that has a Type that is not expandable or if the + * identifier cannot be found + */ + ComputeLineageSubmission submitExpandChildren(long eventId, NiFiUser user); + + /** + * @return a list of all fields that can be searched via the + * {@link ProvenanceQueryableIndex#submitQuery(Query, NiFiUser)} method + */ + List getSearchableFields(); + + /** + * @return a list of all FlowFile attributes that can be searched via the + * {@link ProvenanceQueryableIndex#submitQuery(Query, NiFiUser)} method + */ + List getSearchableAttributes(); +} diff --git a/nifi-mock/pom.xml b/nifi-mock/pom.xml index dd15fefbc799..53f29ff8e820 100644 --- a/nifi-mock/pom.xml +++ b/nifi-mock/pom.xml @@ -26,6 +26,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-utils diff --git a/nifi-mock/src/main/java/org/apache/nifi/provenance/MockProvenanceEventRepository.java b/nifi-mock/src/main/java/org/apache/nifi/provenance/MockProvenanceRepository.java similarity index 81% rename from nifi-mock/src/main/java/org/apache/nifi/provenance/MockProvenanceEventRepository.java rename to nifi-mock/src/main/java/org/apache/nifi/provenance/MockProvenanceRepository.java index dc71ed5f30e8..a13a338dccb9 100644 --- a/nifi-mock/src/main/java/org/apache/nifi/provenance/MockProvenanceEventRepository.java +++ b/nifi-mock/src/main/java/org/apache/nifi/provenance/MockProvenanceRepository.java @@ -30,7 +30,7 @@ import org.apache.nifi.provenance.search.QuerySubmission; import org.apache.nifi.provenance.search.SearchableField; -public class MockProvenanceEventRepository implements ProvenanceEventRepository { +public class MockProvenanceRepository implements ProvenanceRepository { private final List records = new ArrayList<>(); private final AtomicLong idGenerator = new AtomicLong(0L); @@ -79,24 +79,29 @@ public Long getMaxEventId() { return Long.valueOf(records.size() - 1); } + @Override + public ProvenanceEventRecord getEvent(long id) throws IOException { + return null; + } + @Override public QuerySubmission submitQuery(Query query, NiFiUser user) { - throw new UnsupportedOperationException("MockProvenanceEventRepository does not support querying"); + throw new UnsupportedOperationException("MockProvenanceRepository does not support querying"); } @Override public QuerySubmission retrieveQuerySubmission(String queryIdentifier, NiFiUser user) { - throw new UnsupportedOperationException("MockProvenanceEventRepository does not support querying"); + throw new UnsupportedOperationException("MockProvenanceRepository does not support querying"); } @Override public ComputeLineageSubmission submitLineageComputation(String flowFileUuid, NiFiUser user) { - throw new UnsupportedOperationException("MockProvenanceEventRepository does not support Lineage Computation"); + throw new UnsupportedOperationException("MockProvenanceRepository does not support Lineage Computation"); } @Override public ComputeLineageSubmission retrieveLineageSubmission(String lineageIdentifier, NiFiUser user) { - throw new UnsupportedOperationException("MockProvenanceEventRepository does not support Lineage Computation"); + throw new UnsupportedOperationException("MockProvenanceRepository does not support Lineage Computation"); } @Override @@ -110,12 +115,12 @@ public ProvenanceEventRecord getEvent(long id, NiFiUser user) throws IOException @Override public ComputeLineageSubmission submitExpandParents(long eventId, NiFiUser user) { - throw new UnsupportedOperationException("MockProvenanceEventRepository does not support Lineage Computation"); + throw new UnsupportedOperationException("MockProvenanceRepository does not support Lineage Computation"); } @Override public ComputeLineageSubmission submitExpandChildren(long eventId, NiFiUser user) { - throw new UnsupportedOperationException("MockProvenanceEventRepository does not support Lineage Computation"); + throw new UnsupportedOperationException("MockProvenanceRepository does not support Lineage Computation"); } @Override @@ -136,4 +141,9 @@ public List getSearchableAttributes() { public ProvenanceEventBuilder eventBuilder() { return new StandardProvenanceEventRecord.Builder(); } + + @Override + public ProvenanceEventRepository getProvenanceEventRepository() { + return this; + } } diff --git a/nifi-mock/src/main/java/org/apache/nifi/util/MockEventAccess.java b/nifi-mock/src/main/java/org/apache/nifi/util/MockEventAccess.java index 8b3bf25a7fb7..5c9a0ed887e2 100644 --- a/nifi-mock/src/main/java/org/apache/nifi/util/MockEventAccess.java +++ b/nifi-mock/src/main/java/org/apache/nifi/util/MockEventAccess.java @@ -65,7 +65,6 @@ public void addProvenanceEvent(final ProvenanceEventRecord record) { this.provenanceRecords.add(record); } - @Override public ProvenanceEventRepository getProvenanceRepository() { return null; } diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/pom.xml index 90d942c6d744..3bc53603a681 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/pom.xml @@ -32,6 +32,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-expression-language diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowController.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowController.java index 80b89dd4f455..10d0b952d317 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowController.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowController.java @@ -183,8 +183,8 @@ import org.apache.nifi.processor.SimpleProcessLogger; import org.apache.nifi.processor.StandardProcessorInitializationContext; import org.apache.nifi.processor.StandardValidationContextFactory; +import org.apache.nifi.provenance.ProvenanceRepository; import org.apache.nifi.provenance.ProvenanceEventRecord; -import org.apache.nifi.provenance.ProvenanceEventRepository; import org.apache.nifi.provenance.ProvenanceEventType; import org.apache.nifi.provenance.ProvenanceAuthorizableFactory; import org.apache.nifi.provenance.StandardProvenanceEventRecord; @@ -266,7 +266,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R private final ContentRepository contentRepository; private final FlowFileRepository flowFileRepository; private final FlowFileEventRepository flowFileEventRepository; - private final ProvenanceEventRepository provenanceEventRepository; + private final ProvenanceRepository provenanceRepository; private final BulletinRepository bulletinRepository; private final StandardProcessScheduler processScheduler; private final SnippetManager snippetManager; @@ -449,8 +449,8 @@ private FlowController( bulletinRepository = bulletinRepo; try { - this.provenanceEventRepository = createProvenanceRepository(properties); - this.provenanceEventRepository.initialize(createEventReporter(bulletinRepository), authorizer, this); + this.provenanceRepository = createProvenanceRepository(properties); + this.provenanceRepository.initialize(createEventReporter(bulletinRepository), authorizer, this); } catch (final Exception e) { throw new RuntimeException("Unable to create Provenance Repository", e); } @@ -470,7 +470,7 @@ private FlowController( processScheduler = new StandardProcessScheduler(this, encryptor, stateManagerProvider); eventDrivenWorkerQueue = new EventDrivenWorkerQueue(false, false, processScheduler); - final ProcessContextFactory contextFactory = new ProcessContextFactory(contentRepository, flowFileRepository, flowFileEventRepository, counterRepositoryRef.get(), provenanceEventRepository); + final ProcessContextFactory contextFactory = new ProcessContextFactory(contentRepository, flowFileRepository, flowFileEventRepository, counterRepositoryRef.get(), provenanceRepository); processScheduler.setSchedulingAgent(SchedulingStrategy.EVENT_DRIVEN, new EventDrivenSchedulingAgent( eventDrivenEngineRef.get(), this, stateManagerProvider, eventDrivenWorkerQueue, contextFactory, maxEventDrivenThreads.get(), encryptor)); @@ -521,7 +521,7 @@ private FlowController( LOG.info("Not enabling RAW Socket Site-to-Site functionality because nifi.remote.input.socket.port is not set"); } else if (isSiteToSiteSecure && sslContext == null) { LOG.error("Unable to create Secure Site-to-Site Listener because not all required Keystore/Truststore " - + "Properties are set. Site-to-Site functionality will be disabled until this problem is has been fixed."); + + "Properties are set. Site-to-Site functionality will be disabled until this problem is has been fixed."); } else { // Register the SocketFlowFileServerProtocol as the appropriate resource for site-to-site Server Protocol RemoteResourceManager.setServerProtocolImplementation(SocketFlowFileServerProtocol.RESOURCE_NAME, SocketFlowFileServerProtocol.class); @@ -534,7 +534,7 @@ private FlowController( externalSiteListeners.add(HttpRemoteSiteListener.getInstance()); } - for(final RemoteSiteListener listener : externalSiteListeners) { + for (final RemoteSiteListener listener : externalSiteListeners) { listener.setRootGroup(rootGroup); } @@ -672,7 +672,7 @@ public void initializeFlow() throws IOException { // ContentRepository to purge superfluous files contentRepository.cleanup(); - for(final RemoteSiteListener listener : externalSiteListeners) { + for (final RemoteSiteListener listener : externalSiteListeners) { listener.start(); } @@ -807,7 +807,7 @@ private ContentRepository createContentRepository(final NiFiProperties propertie } } - private ProvenanceEventRepository createProvenanceRepository(final NiFiProperties properties) throws InstantiationException, IllegalAccessException, ClassNotFoundException { + private ProvenanceRepository createProvenanceRepository(final NiFiProperties properties) throws InstantiationException, IllegalAccessException, ClassNotFoundException { final String implementationClassName = properties.getProperty(NiFiProperties.PROVENANCE_REPO_IMPLEMENTATION_CLASS, DEFAULT_PROVENANCE_REPO_IMPLEMENTATION); if (implementationClassName == null) { throw new RuntimeException("Cannot create Provenance Repository because the NiFi Properties is missing the following property: " @@ -815,7 +815,7 @@ private ProvenanceEventRepository createProvenanceRepository(final NiFiPropertie } try { - return NarThreadContextClassLoader.createInstance(implementationClassName, ProvenanceEventRepository.class); + return NarThreadContextClassLoader.createInstance(implementationClassName, ProvenanceRepository.class); } catch (final Exception e) { throw new RuntimeException(e); } @@ -882,16 +882,16 @@ public EventReporter getEventReporter() { } return builder.id(requireNonNull(id).intern()) - .name(name == null ? null : name.intern()) - .relationships(relationships) - .source(requireNonNull(source)) - .destination(destination) - .swapManager(swapManager) - .eventReporter(eventReporter) - .resourceClaimManager(resourceClaimManager) - .flowFileRepository(flowFileRepository) - .provenanceRepository(provenanceEventRepository) - .build(); + .name(name == null ? null : name.intern()) + .relationships(relationships) + .source(requireNonNull(source)) + .destination(destination) + .swapManager(swapManager) + .eventReporter(eventReporter) + .resourceClaimManager(resourceClaimManager) + .flowFileRepository(flowFileRepository) + .provenanceRepository(provenanceRepository) + .build(); } /** @@ -1313,7 +1313,7 @@ public void shutdown(final boolean kill) { + "will take an indeterminate amount of time to stop. Might need to kill the program manually."); } - for(final RemoteSiteListener listener : externalSiteListeners) { + for (final RemoteSiteListener listener : externalSiteListeners) { listener.stop(); } @@ -1325,9 +1325,9 @@ public void shutdown(final boolean kill) { contentRepository.shutdown(); } - if (provenanceEventRepository != null) { + if (provenanceRepository != null) { try { - provenanceEventRepository.close(); + provenanceRepository.close(); } catch (final IOException ioe) { LOG.warn("There was a problem shutting down the Provenance Repository: " + ioe.toString()); if (LOG.isDebugEnabled()) { @@ -1414,9 +1414,7 @@ public void setMaxEventDrivenThreadCount(final int maxThreadCount) { /** * Updates the number of threads that can be simultaneously used for executing processors. * - * @param maxThreadCount - * - * This method must be called while holding the write lock! + * @param maxThreadCount This method must be called while holding the write lock! */ private void setMaxThreadCount(final int maxThreadCount, final FlowEngine engine, final AtomicInteger maxThreads) { if (maxThreadCount < 1) { @@ -1458,7 +1456,7 @@ void setRootGroup(final ProcessGroup group) { try { rootGroup = group; - for(final RemoteSiteListener listener : externalSiteListeners) { + for (final RemoteSiteListener listener : externalSiteListeners) { listener.setRootGroup(rootGroup); } @@ -3496,7 +3494,7 @@ public InputStream getContent(final ProvenanceEventRecord provEvent, final Conte .setDetails("Download of " + (direction == ContentDirection.INPUT ? "Input" : "Output") + " Content requested by " + requestor + " for Provenance Event " + provEvent.getEventId()) .build(); - provenanceEventRepository.registerEvent(sendEvent); + provenanceRepository.registerEvent(sendEvent); return new LimitedInputStream(rawStream, size); } @@ -3542,7 +3540,7 @@ public InputStream getContent(final FlowFileRecord flowFile, final String reques } final ProvenanceEventRecord sendEvent = sendEventBuilder.build(); - provenanceEventRepository.registerEvent(sendEvent); + provenanceRepository.registerEvent(sendEvent); return stream; } @@ -3596,7 +3594,7 @@ private String getReplayFailureReason(final ProvenanceEventRecord event) { } public ProvenanceEventRecord replayFlowFile(final long provenanceEventRecordId, final NiFiUser user) throws IOException { - final ProvenanceEventRecord record = provenanceEventRepository.getEvent(provenanceEventRecordId, user); + final ProvenanceEventRecord record = provenanceRepository.getEvent(provenanceEventRecordId, user); if (record == null) { throw new IllegalStateException("Cannot find Provenance Event with ID " + provenanceEventRecordId); } @@ -3691,20 +3689,20 @@ public ProvenanceEventRecord replayFlowFile(final ProvenanceEventRecord event, f // Register a Provenance Event to indicate that we replayed the data. final ProvenanceEventRecord replayEvent = new StandardProvenanceEventRecord.Builder() - .setEventType(ProvenanceEventType.REPLAY) - .addChildUuid(newFlowFileUUID) - .addParentUuid(parentUUID) - .setFlowFileUUID(parentUUID) - .setAttributes(Collections. emptyMap(), flowFileRecord.getAttributes()) - .setCurrentContentClaim(event.getContentClaimContainer(), event.getContentClaimSection(), event.getContentClaimIdentifier(), event.getContentClaimOffset(), event.getFileSize()) - .setDetails("Replay requested by " + user.getIdentity()) - .setEventTime(System.currentTimeMillis()) - .setFlowFileEntryDate(System.currentTimeMillis()) - .setLineageStartDate(event.getLineageStartDate()) - .setComponentType(event.getComponentType()) - .setComponentId(event.getComponentId()) - .build(); - provenanceEventRepository.registerEvent(replayEvent); + .setEventType(ProvenanceEventType.REPLAY) + .addChildUuid(newFlowFileUUID) + .addParentUuid(parentUUID) + .setFlowFileUUID(parentUUID) + .setAttributes(Collections.emptyMap(), flowFileRecord.getAttributes()) + .setCurrentContentClaim(event.getContentClaimContainer(), event.getContentClaimSection(), event.getContentClaimIdentifier(), event.getContentClaimOffset(), event.getFileSize()) + .setDetails("Replay requested by " + user.getIdentity()) + .setEventTime(System.currentTimeMillis()) + .setFlowFileEntryDate(System.currentTimeMillis()) + .setLineageStartDate(event.getLineageStartDate()) + .setComponentType(event.getComponentType()) + .setComponentId(event.getComponentId()) + .build(); + provenanceRepository.registerEvent(replayEvent); // Update the FlowFile Repository to indicate that we have added the FlowFile to the flow final StandardRepositoryRecord record = new StandardRepositoryRecord(queue, flowFileRecord); @@ -3863,7 +3861,7 @@ private void updateRemoteProcessGroups() { @Override public List getProvenanceEvents(final long firstEventId, final int maxRecords) throws IOException { - return new ArrayList<>(provenanceEventRepository.getEvents(firstEventId, maxRecords)); + return new ArrayList<>(provenanceRepository.getEvents(firstEventId, maxRecords)); } @Override @@ -3955,9 +3953,8 @@ public Set getControllerServiceIdentifiers(final Classorg.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/ExtensionManager.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/ExtensionManager.java index f06012cbda06..9a32aa135782 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/ExtensionManager.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/ExtensionManager.java @@ -26,6 +26,7 @@ import org.apache.nifi.flowfile.FlowFilePrioritizer; import org.apache.nifi.processor.Processor; import org.apache.nifi.provenance.ProvenanceEventRepository; +import org.apache.nifi.provenance.ProvenanceRepository; import org.apache.nifi.reporting.ReportingTask; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -53,17 +54,17 @@ public class ExtensionManager { private static final Map extensionClassloaderLookup = new HashMap<>(); static { - definitionMap.put(Processor.class, new HashSet()); - definitionMap.put(FlowFilePrioritizer.class, new HashSet()); - definitionMap.put(ReportingTask.class, new HashSet()); - definitionMap.put(ControllerService.class, new HashSet()); - definitionMap.put(Authorizer.class, new HashSet()); - definitionMap.put(LoginIdentityProvider.class, new HashSet()); - definitionMap.put(ProvenanceEventRepository.class, new HashSet()); - definitionMap.put(ComponentStatusRepository.class, new HashSet()); - definitionMap.put(FlowFileRepository.class, new HashSet()); - definitionMap.put(FlowFileSwapManager.class, new HashSet()); - definitionMap.put(ContentRepository.class, new HashSet()); + definitionMap.put(Processor.class, new HashSet<>()); + definitionMap.put(FlowFilePrioritizer.class, new HashSet<>()); + definitionMap.put(ReportingTask.class, new HashSet<>()); + definitionMap.put(ControllerService.class, new HashSet<>()); + definitionMap.put(Authorizer.class, new HashSet<>()); + definitionMap.put(LoginIdentityProvider.class, new HashSet<>()); + definitionMap.put(ProvenanceRepository.class, new HashSet<>()); + definitionMap.put(ComponentStatusRepository.class, new HashSet<>()); + definitionMap.put(FlowFileRepository.class, new HashSet<>()); + definitionMap.put(FlowFileSwapManager.class, new HashSet<>()); + definitionMap.put(ContentRepository.class, new HashSet<>()); } /** diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarThreadContextClassLoader.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarThreadContextClassLoader.java index 93f73eb6833e..70e0b08ef1c4 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarThreadContextClassLoader.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarThreadContextClassLoader.java @@ -30,6 +30,7 @@ import org.apache.nifi.processor.io.OutputStreamCallback; import org.apache.nifi.processor.io.StreamCallback; import org.apache.nifi.provenance.ProvenanceEventRepository; +import org.apache.nifi.provenance.ProvenanceRepository; import org.apache.nifi.reporting.ReportingTask; import java.io.IOException; @@ -60,7 +61,7 @@ public class NarThreadContextClassLoader extends URLClassLoader { narSpecificClasses.add(ControllerService.class); narSpecificClasses.add(Authorizer.class); narSpecificClasses.add(LoginIdentityProvider.class); - narSpecificClasses.add(ProvenanceEventRepository.class); + narSpecificClasses.add(ProvenanceRepository.class); narSpecificClasses.add(ComponentStatusRepository.class); narSpecificClasses.add(FlowFileRepository.class); narSpecificClasses.add(FlowFileSwapManager.class); diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/pom.xml index 38ce1a627a1e..902483540da4 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/pom.xml @@ -156,6 +156,11 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + provided + org.apache.nifi nifi-nar-utils diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/controller/ControllerFacade.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/controller/ControllerFacade.java index 6a699e4102e5..38e4d399973f 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/controller/ControllerFacade.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/controller/ControllerFacade.java @@ -69,6 +69,7 @@ import org.apache.nifi.processor.DataUnit; import org.apache.nifi.processor.Processor; import org.apache.nifi.processor.Relationship; +import org.apache.nifi.provenance.ProvenanceRepository; import org.apache.nifi.provenance.ProvenanceEventRecord; import org.apache.nifi.provenance.ProvenanceEventRepository; import org.apache.nifi.provenance.SearchableFields; @@ -855,7 +856,7 @@ public List getResources() { * @return the available options for searching provenance */ public ProvenanceOptionsDTO getProvenanceSearchOptions() { - final ProvenanceEventRepository provenanceRepository = flowController.getProvenanceRepository(); + final ProvenanceRepository provenanceRepository = flowController.getProvenanceRepository(); // create the search options dto final ProvenanceOptionsDTO searchOptions = new ProvenanceOptionsDTO(); @@ -929,7 +930,7 @@ public ProvenanceDTO submitProvenance(ProvenanceDTO provenanceDto) { } // submit the query to the provenance repository - final ProvenanceEventRepository provenanceRepository = flowController.getProvenanceRepository(); + final ProvenanceRepository provenanceRepository = flowController.getProvenanceRepository(); final QuerySubmission querySubmission = provenanceRepository.submitQuery(query, NiFiUserUtils.getNiFiUser()); // return the query with the results populated at this point @@ -945,7 +946,7 @@ public ProvenanceDTO submitProvenance(ProvenanceDTO provenanceDto) { public ProvenanceDTO getProvenanceQuery(String provenanceId) { try { // get the query to the provenance repository - final ProvenanceEventRepository provenanceRepository = flowController.getProvenanceRepository(); + final ProvenanceRepository provenanceRepository = flowController.getProvenanceRepository(); final QuerySubmission querySubmission = provenanceRepository.retrieveQuerySubmission(provenanceId, NiFiUserUtils.getNiFiUser()); // ensure the query results could be found @@ -1037,7 +1038,7 @@ public LineageDTO submitLineage(LineageDTO lineageDto) { final LineageRequestDTO requestDto = lineageDto.getRequest(); // get the provenance repo - final ProvenanceEventRepository provenanceRepository = flowController.getProvenanceRepository(); + final ProvenanceRepository provenanceRepository = flowController.getProvenanceRepository(); final ComputeLineageSubmission result; // submit the event @@ -1064,7 +1065,7 @@ public LineageDTO submitLineage(LineageDTO lineageDto) { */ public LineageDTO getLineage(final String lineageId) { // get the query to the provenance repository - final ProvenanceEventRepository provenanceRepository = flowController.getProvenanceRepository(); + final ProvenanceRepository provenanceRepository = flowController.getProvenanceRepository(); final ComputeLineageSubmission computeLineageSubmission = provenanceRepository.retrieveLineageSubmission(lineageId, NiFiUserUtils.getNiFiUser()); // ensure the submission was found @@ -1082,7 +1083,7 @@ public LineageDTO getLineage(final String lineageId) { */ public void deleteProvenanceQuery(final String provenanceId) { // get the query to the provenance repository - final ProvenanceEventRepository provenanceRepository = flowController.getProvenanceRepository(); + final ProvenanceRepository provenanceRepository = flowController.getProvenanceRepository(); final QuerySubmission querySubmission = provenanceRepository.retrieveQuerySubmission(provenanceId, NiFiUserUtils.getNiFiUser()); if (querySubmission != null) { querySubmission.cancel(); @@ -1096,7 +1097,7 @@ public void deleteProvenanceQuery(final String provenanceId) { */ public void deleteLineage(final String lineageId) { // get the query to the provenance repository - final ProvenanceEventRepository provenanceRepository = flowController.getProvenanceRepository(); + final ProvenanceRepository provenanceRepository = flowController.getProvenanceRepository(); final ComputeLineageSubmission computeLineageSubmission = provenanceRepository.retrieveLineageSubmission(lineageId, NiFiUserUtils.getNiFiUser()); if (computeLineageSubmission != null) { computeLineageSubmission.cancel(); diff --git a/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/pom.xml b/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/pom.xml index a02f0710cdf0..67a731087e26 100644 --- a/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/pom.xml +++ b/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/pom.xml @@ -26,6 +26,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-data-provenance-utils diff --git a/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/PersistentProvenanceRepository.java b/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/PersistentProvenanceRepository.java index 0d7886db260c..eacd5545a022 100644 --- a/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/PersistentProvenanceRepository.java +++ b/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/java/org/apache/nifi/provenance/PersistentProvenanceRepository.java @@ -111,7 +111,7 @@ import java.util.regex.Pattern; import java.util.stream.Collectors; -public class PersistentProvenanceRepository implements ProvenanceEventRepository { +public class PersistentProvenanceRepository implements ProvenanceRepository { public static final String EVENT_CATEGORY = "Provenance Repository"; private static final String FILE_EXTENSION = ".prov"; @@ -2266,7 +2266,7 @@ public QuerySubmission retrieveQuerySubmission(final String queryIdentifier, fin throw new AccessDeniedException("Cannot retrieve Provenance Query Submission because " + user.getIdentity() + " is not the user who submitted the request"); } - private ProvenanceEventRecord getEvent(final long id) throws IOException { + public ProvenanceEventRecord getEvent(final long id) throws IOException { final List records = getEvents(id, 1); if (records.isEmpty()) { return null; @@ -2322,6 +2322,11 @@ public int compare(final Path o1, final Path o2) { return files; } + @Override + public ProvenanceEventRepository getProvenanceEventRepository() { + return this; + } + /** * Returns the Event ID of the first event in the given Provenance Event Log File. * diff --git a/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/resources/META-INF/services/org.apache.nifi.provenance.ProvenanceEventRepository b/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/resources/META-INF/services/org.apache.nifi.provenance.ProvenanceRepository similarity index 100% rename from nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/resources/META-INF/services/org.apache.nifi.provenance.ProvenanceEventRepository rename to nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository/src/main/resources/META-INF/services/org.apache.nifi.provenance.ProvenanceRepository diff --git a/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository/pom.xml b/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository/pom.xml index f58f522b2541..35a26e131c3e 100644 --- a/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository/pom.xml +++ b/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository/pom.xml @@ -26,6 +26,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-data-provenance-utils diff --git a/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository/src/main/java/org/apache/nifi/provenance/VolatileProvenanceRepository.java b/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository/src/main/java/org/apache/nifi/provenance/VolatileProvenanceRepository.java index 7445c5d80171..b65d99dd6d8a 100644 --- a/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository/src/main/java/org/apache/nifi/provenance/VolatileProvenanceRepository.java +++ b/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository/src/main/java/org/apache/nifi/provenance/VolatileProvenanceRepository.java @@ -62,7 +62,7 @@ import java.util.concurrent.atomic.AtomicLong; import java.util.regex.Pattern; -public class VolatileProvenanceRepository implements ProvenanceEventRepository { +public class VolatileProvenanceRepository implements ProvenanceRepository { // properties public static final String BUFFER_SIZE = "nifi.provenance.repository.buffer.size"; @@ -123,6 +123,11 @@ public void initialize(final EventReporter eventReporter, final Authorizer autho scheduledExecService.scheduleWithFixedDelay(new RemoveExpiredQueryResults(), 30L, 30L, TimeUnit.SECONDS); } + @Override + public ProvenanceEventRepository getProvenanceEventRepository() { + return this; + } + @Override public ProvenanceEventBuilder eventBuilder() { return new StandardProvenanceEventRecord.Builder(); @@ -176,7 +181,7 @@ public boolean select(final ProvenanceEventRecord event) { return records.isEmpty() ? null : records.get(0); } - private ProvenanceEventRecord getEvent(final long id) { + public ProvenanceEventRecord getEvent(final long id) { final List records = ringBuffer.getSelectedElements(new Filter() { @Override public boolean select(final ProvenanceEventRecord event) { @@ -187,7 +192,6 @@ public boolean select(final ProvenanceEventRecord event) { return records.isEmpty() ? null : records.get(0); } - @Override public ProvenanceEventRecord getEvent(final long id, final NiFiUser user) { final ProvenanceEventRecord event = getEvent(id); if (event == null) { diff --git a/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository/src/main/resources/META-INF/services/org.apache.nifi.provenance.ProvenanceEventRepository b/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository/src/main/resources/META-INF/services/org.apache.nifi.provenance.ProvenanceRepository similarity index 100% rename from nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository/src/main/resources/META-INF/services/org.apache.nifi.provenance.ProvenanceEventRepository rename to nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository/src/main/resources/META-INF/services/org.apache.nifi.provenance.ProvenanceRepository diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-reporting-tasks/src/test/java/org/apache/nifi/controller/MonitorMemoryTest.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-reporting-tasks/src/test/java/org/apache/nifi/controller/MonitorMemoryTest.java index 1eb3334c3018..824503a2303f 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-reporting-tasks/src/test/java/org/apache/nifi/controller/MonitorMemoryTest.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-reporting-tasks/src/test/java/org/apache/nifi/controller/MonitorMemoryTest.java @@ -20,7 +20,7 @@ import org.apache.nifi.admin.service.AuditService; import org.apache.nifi.authorization.Authorizer; import org.apache.nifi.controller.repository.FlowFileEventRepository; -import org.apache.nifi.provenance.MockProvenanceEventRepository; +import org.apache.nifi.provenance.MockProvenanceRepository; import org.apache.nifi.util.CapturingLogger; import org.apache.nifi.util.NiFiProperties; import org.junit.After; @@ -131,7 +131,7 @@ private FlowController buildFlowControllerForTest() throws Exception { NiFiProperties properties = NiFiProperties.getInstance(); properties.setProperty(NiFiProperties.PROVENANCE_REPO_IMPLEMENTATION_CLASS, - MockProvenanceEventRepository.class.getName()); + MockProvenanceRepository.class.getName()); properties.setProperty("nifi.remote.input.socket.port", ""); properties.setProperty("nifi.remote.input.secure", ""); diff --git a/nifi-nar-bundles/pom.xml b/nifi-nar-bundles/pom.xml index d554e03484f5..945002f269da 100644 --- a/nifi-nar-bundles/pom.xml +++ b/nifi-nar-bundles/pom.xml @@ -133,6 +133,12 @@ 1.0.0-SNAPSHOT provided + + org.apache.nifi + nifi-framework-api + 1.0.0-SNAPSHOT + provided + org.apache.nifi nifi-runtime diff --git a/pom.xml b/pom.xml index 0a41aa4895c1..154b324caa89 100644 --- a/pom.xml +++ b/pom.xml @@ -25,6 +25,7 @@ language governing permissions and limitations under the License. --> nifi-commons nifi-api + nifi-framework-api nifi-bootstrap nifi-mock nifi-nar-bundles @@ -791,6 +792,11 @@ language governing permissions and limitations under the License. --> nifi-api 1.0.0-SNAPSHOT + + org.apache.nifi + nifi-framework-api + 1.0.0-SNAPSHOT + org.apache.nifi nifi-utils From a4f175b30f09849df794a324ac26043865e95167 Mon Sep 17 00:00:00 2001 From: Aldrin Piri Date: Wed, 13 Jul 2016 14:41:02 -0400 Subject: [PATCH 02/12] Refactoring authorization and user interfaces to be located in the nifi-framework-api module. Updating associated modules to make use of this dependency. Performing general cleanup. --- .../nifi/annotation/behavior/DynamicProperties.java | 2 +- .../apache/nifi/annotation/behavior/DynamicProperty.java | 8 ++++---- .../nifi/annotation/behavior/DynamicRelationship.java | 4 ++-- .../apache/nifi/annotation/behavior/InputRequirement.java | 2 +- .../apache/nifi/annotation/behavior/ReadsAttributes.java | 2 +- .../apache/nifi/annotation/behavior/WritesAttribute.java | 4 ++-- .../apache/nifi/annotation/behavior/WritesAttributes.java | 2 +- .../org/apache/nifi/annotation/documentation/SeeAlso.java | 4 ++-- .../org/apache/nifi/annotation/documentation/Tags.java | 2 +- .../apache/nifi/provenance/ProvenanceEventRepository.java | 2 -- .../nifi/action/component/details/ExtensionDetails.java | 0 .../component/details/RemoteProcessGroupDetails.java | 0 .../org/apache/nifi/action/details/ConfigureDetails.java | 0 .../org/apache/nifi/action/details/ConnectDetails.java | 0 .../java/org/apache/nifi/action/details/MoveDetails.java | 0 .../java/org/apache/nifi/action/details/PurgeDetails.java | 0 .../nifi/authentication/AuthenticationResponse.java | 0 .../org/apache/nifi/authentication/LoginCredentials.java | 0 .../apache/nifi/authentication/LoginIdentityProvider.java | 0 .../LoginIdentityProviderConfigurationContext.java | 0 .../LoginIdentityProviderInitializationContext.java | 0 .../nifi/authentication/LoginIdentityProviderLookup.java | 0 .../annotation/LoginIdentityProviderContext.java | 0 .../authentication/exception/IdentityAccessException.java | 0 .../exception/InvalidLoginCredentialsException.java | 0 .../exception/ProviderCreationException.java | 0 .../exception/ProviderDestructionException.java | 0 .../nifi/authorization/AbstractPolicyBasedAuthorizer.java | 0 .../apache/nifi/authorization/AccessDeniedException.java | 0 .../java/org/apache/nifi/authorization/AccessPolicy.java | 0 .../apache/nifi/authorization/AuthorizationRequest.java | 0 .../apache/nifi/authorization/AuthorizationResult.java | 0 .../java/org/apache/nifi/authorization/Authorizer.java | 0 .../authorization/AuthorizerConfigurationContext.java | 0 .../authorization/AuthorizerInitializationContext.java | 0 .../org/apache/nifi/authorization/AuthorizerLookup.java | 0 .../main/java/org/apache/nifi/authorization/Group.java | 0 .../java/org/apache/nifi/authorization/RequestAction.java | 0 .../main/java/org/apache/nifi/authorization/Resource.java | 0 .../src/main/java/org/apache/nifi/authorization/User.java | 0 .../org/apache/nifi/authorization/UserContextKeys.java | 0 .../apache/nifi/authorization/UsersAndAccessPolicies.java | 0 .../nifi/authorization/annotation/AuthorizerContext.java | 0 .../exception/AuthorizationAccessException.java | 0 .../exception/AuthorizerCreationException.java | 0 .../exception/AuthorizerDestructionException.java | 0 .../apache/nifi/authorization/resource/Authorizable.java | 0 .../java/org/apache/nifi/authorization/user/NiFiUser.java | 0 .../nifi/provenance/ProvenanceAuthorizableFactory.java | 0 .../apache/nifi/provenance/ProvenanceQueryableIndex.java | 0 .../authorization/TestAbstractPolicyBasedAuthorizer.java | 0 .../org/apache/nifi/authorization/TestAccessPolicy.java | 0 .../java/org/apache/nifi/authorization/TestGroup.java | 0 .../test/java/org/apache/nifi/authorization/TestUser.java | 0 .../nifi-framework/nifi-administration/pom.xml | 4 ++++ .../nifi-framework/nifi-authorizer/pom.xml | 4 ++++ .../nifi-framework/nifi-file-authorizer/pom.xml | 4 ++++ .../nifi-framework/nifi-framework-authorization/pom.xml | 4 ++++ .../nifi-framework/nifi-framework-cluster/pom.xml | 4 ++++ .../nifi-framework/nifi-framework-core-api/pom.xml | 4 ++++ .../nifi-framework/nifi-site-to-site/pom.xml | 4 ++++ .../nifi-framework/nifi-user-actions/pom.xml | 4 ++++ .../nifi-web/nifi-web-content-viewer/pom.xml | 4 ++++ .../nifi-web/nifi-web-optimistic-locking/pom.xml | 4 ++++ .../nifi-framework/nifi-web/nifi-web-security/pom.xml | 4 ++++ .../nifi-kerberos-iaa-providers/pom.xml | 4 ++++ .../nifi-ldap-iaa-providers/pom.xml | 4 ++++ 67 files changed, 67 insertions(+), 17 deletions(-) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/action/component/details/ExtensionDetails.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/action/component/details/RemoteProcessGroupDetails.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/action/details/ConfigureDetails.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/action/details/ConnectDetails.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/action/details/MoveDetails.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/action/details/PurgeDetails.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authentication/AuthenticationResponse.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authentication/LoginCredentials.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authentication/LoginIdentityProvider.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authentication/LoginIdentityProviderConfigurationContext.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authentication/LoginIdentityProviderInitializationContext.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authentication/LoginIdentityProviderLookup.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authentication/annotation/LoginIdentityProviderContext.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authentication/exception/IdentityAccessException.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authentication/exception/InvalidLoginCredentialsException.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authentication/exception/ProviderCreationException.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authentication/exception/ProviderDestructionException.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/AbstractPolicyBasedAuthorizer.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/AccessDeniedException.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/AccessPolicy.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/AuthorizationRequest.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/AuthorizationResult.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/Authorizer.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/AuthorizerConfigurationContext.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/AuthorizerInitializationContext.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/AuthorizerLookup.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/Group.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/RequestAction.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/Resource.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/User.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/UserContextKeys.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/UsersAndAccessPolicies.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/annotation/AuthorizerContext.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/exception/AuthorizationAccessException.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/exception/AuthorizerCreationException.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/exception/AuthorizerDestructionException.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/resource/Authorizable.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/authorization/user/NiFiUser.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/provenance/ProvenanceAuthorizableFactory.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/provenance/ProvenanceQueryableIndex.java (100%) rename {nifi-api => nifi-framework-api}/src/test/java/org/apache/nifi/authorization/TestAbstractPolicyBasedAuthorizer.java (100%) rename {nifi-api => nifi-framework-api}/src/test/java/org/apache/nifi/authorization/TestAccessPolicy.java (100%) rename {nifi-api => nifi-framework-api}/src/test/java/org/apache/nifi/authorization/TestGroup.java (100%) rename {nifi-api => nifi-framework-api}/src/test/java/org/apache/nifi/authorization/TestUser.java (100%) diff --git a/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/DynamicProperties.java b/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/DynamicProperties.java index b936ff062f4b..967053506eb4 100644 --- a/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/DynamicProperties.java +++ b/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/DynamicProperties.java @@ -33,5 +33,5 @@ @Inherited public @interface DynamicProperties { - public DynamicProperty[] value(); + DynamicProperty[] value(); } diff --git a/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/DynamicProperty.java b/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/DynamicProperty.java index d5f0511fb256..e7712df1de63 100644 --- a/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/DynamicProperty.java +++ b/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/DynamicProperty.java @@ -36,11 +36,11 @@ @Inherited public @interface DynamicProperty { - public String name(); + String name(); - public boolean supportsExpressionLanguage() default false; + boolean supportsExpressionLanguage() default false; - public String value(); + String value(); - public String description(); + String description(); } diff --git a/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/DynamicRelationship.java b/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/DynamicRelationship.java index 88d3b1d2a7f9..68d40c7fb022 100644 --- a/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/DynamicRelationship.java +++ b/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/DynamicRelationship.java @@ -39,7 +39,7 @@ @Inherited public @interface DynamicRelationship { - public String name(); + String name(); - public String description(); + String description(); } diff --git a/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/InputRequirement.java b/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/InputRequirement.java index 13f442c18e35..372d80c7772d 100644 --- a/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/InputRequirement.java +++ b/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/InputRequirement.java @@ -39,7 +39,7 @@ public @interface InputRequirement { Requirement value(); - public static enum Requirement { + enum Requirement { /** * This value is used to indicate that the Processor requires input from other Processors * in order to run. As a result, the Processor will not be valid if it does not have any diff --git a/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/ReadsAttributes.java b/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/ReadsAttributes.java index e65746c81775..fe1f8bd9e8f4 100644 --- a/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/ReadsAttributes.java +++ b/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/ReadsAttributes.java @@ -35,5 +35,5 @@ @Inherited public @interface ReadsAttributes { - public ReadsAttribute[] value(); + ReadsAttribute[] value(); } diff --git a/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/WritesAttribute.java b/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/WritesAttribute.java index b2e1c4885389..d06af8ff1e0a 100644 --- a/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/WritesAttribute.java +++ b/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/WritesAttribute.java @@ -35,7 +35,7 @@ @Inherited public @interface WritesAttribute { - public String attribute(); + String attribute(); - public String description() default ""; + String description() default ""; } diff --git a/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/WritesAttributes.java b/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/WritesAttributes.java index ad3e401d1ed7..603eb86ab4f6 100644 --- a/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/WritesAttributes.java +++ b/nifi-api/src/main/java/org/apache/nifi/annotation/behavior/WritesAttributes.java @@ -35,5 +35,5 @@ @Inherited public @interface WritesAttributes { - public WritesAttribute[] value(); + WritesAttribute[] value(); } diff --git a/nifi-api/src/main/java/org/apache/nifi/annotation/documentation/SeeAlso.java b/nifi-api/src/main/java/org/apache/nifi/annotation/documentation/SeeAlso.java index 4b77c433f261..f89e25b11009 100644 --- a/nifi-api/src/main/java/org/apache/nifi/annotation/documentation/SeeAlso.java +++ b/nifi-api/src/main/java/org/apache/nifi/annotation/documentation/SeeAlso.java @@ -38,7 +38,7 @@ @Inherited public @interface SeeAlso { - public Class[] value() default {}; + Class[] value() default {}; - public String[] classNames() default {}; + String[] classNames() default {}; } diff --git a/nifi-api/src/main/java/org/apache/nifi/annotation/documentation/Tags.java b/nifi-api/src/main/java/org/apache/nifi/annotation/documentation/Tags.java index 366dd4c6ae10..d9721abb3f57 100644 --- a/nifi-api/src/main/java/org/apache/nifi/annotation/documentation/Tags.java +++ b/nifi-api/src/main/java/org/apache/nifi/annotation/documentation/Tags.java @@ -38,5 +38,5 @@ @Inherited public @interface Tags { - public String[] value(); + String[] value(); } diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceEventRepository.java b/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceEventRepository.java index a44d1f33e92b..260aca53d247 100644 --- a/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceEventRepository.java +++ b/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceEventRepository.java @@ -19,7 +19,6 @@ import java.io.IOException; import java.util.List; -import org.apache.nifi.authorization.AccessDeniedException; import org.apache.nifi.web.ResourceNotFoundException; /** @@ -88,7 +87,6 @@ public interface ProvenanceEventRepository { * @return the Provenance Event Record with the given ID, if it exists, or * {@code null} otherwise * @throws IOException if failure while retrieving event - * @throws AccessDeniedException if the user does not have access to the component * @throws ResourceNotFoundException if the component that the event belongs to cannot be found */ ProvenanceEventRecord getEvent(long id) throws IOException; diff --git a/nifi-api/src/main/java/org/apache/nifi/action/component/details/ExtensionDetails.java b/nifi-framework-api/src/main/java/org/apache/nifi/action/component/details/ExtensionDetails.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/action/component/details/ExtensionDetails.java rename to nifi-framework-api/src/main/java/org/apache/nifi/action/component/details/ExtensionDetails.java diff --git a/nifi-api/src/main/java/org/apache/nifi/action/component/details/RemoteProcessGroupDetails.java b/nifi-framework-api/src/main/java/org/apache/nifi/action/component/details/RemoteProcessGroupDetails.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/action/component/details/RemoteProcessGroupDetails.java rename to nifi-framework-api/src/main/java/org/apache/nifi/action/component/details/RemoteProcessGroupDetails.java diff --git a/nifi-api/src/main/java/org/apache/nifi/action/details/ConfigureDetails.java b/nifi-framework-api/src/main/java/org/apache/nifi/action/details/ConfigureDetails.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/action/details/ConfigureDetails.java rename to nifi-framework-api/src/main/java/org/apache/nifi/action/details/ConfigureDetails.java diff --git a/nifi-api/src/main/java/org/apache/nifi/action/details/ConnectDetails.java b/nifi-framework-api/src/main/java/org/apache/nifi/action/details/ConnectDetails.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/action/details/ConnectDetails.java rename to nifi-framework-api/src/main/java/org/apache/nifi/action/details/ConnectDetails.java diff --git a/nifi-api/src/main/java/org/apache/nifi/action/details/MoveDetails.java b/nifi-framework-api/src/main/java/org/apache/nifi/action/details/MoveDetails.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/action/details/MoveDetails.java rename to nifi-framework-api/src/main/java/org/apache/nifi/action/details/MoveDetails.java diff --git a/nifi-api/src/main/java/org/apache/nifi/action/details/PurgeDetails.java b/nifi-framework-api/src/main/java/org/apache/nifi/action/details/PurgeDetails.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/action/details/PurgeDetails.java rename to nifi-framework-api/src/main/java/org/apache/nifi/action/details/PurgeDetails.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authentication/AuthenticationResponse.java b/nifi-framework-api/src/main/java/org/apache/nifi/authentication/AuthenticationResponse.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authentication/AuthenticationResponse.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authentication/AuthenticationResponse.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authentication/LoginCredentials.java b/nifi-framework-api/src/main/java/org/apache/nifi/authentication/LoginCredentials.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authentication/LoginCredentials.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authentication/LoginCredentials.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authentication/LoginIdentityProvider.java b/nifi-framework-api/src/main/java/org/apache/nifi/authentication/LoginIdentityProvider.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authentication/LoginIdentityProvider.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authentication/LoginIdentityProvider.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authentication/LoginIdentityProviderConfigurationContext.java b/nifi-framework-api/src/main/java/org/apache/nifi/authentication/LoginIdentityProviderConfigurationContext.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authentication/LoginIdentityProviderConfigurationContext.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authentication/LoginIdentityProviderConfigurationContext.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authentication/LoginIdentityProviderInitializationContext.java b/nifi-framework-api/src/main/java/org/apache/nifi/authentication/LoginIdentityProviderInitializationContext.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authentication/LoginIdentityProviderInitializationContext.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authentication/LoginIdentityProviderInitializationContext.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authentication/LoginIdentityProviderLookup.java b/nifi-framework-api/src/main/java/org/apache/nifi/authentication/LoginIdentityProviderLookup.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authentication/LoginIdentityProviderLookup.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authentication/LoginIdentityProviderLookup.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authentication/annotation/LoginIdentityProviderContext.java b/nifi-framework-api/src/main/java/org/apache/nifi/authentication/annotation/LoginIdentityProviderContext.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authentication/annotation/LoginIdentityProviderContext.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authentication/annotation/LoginIdentityProviderContext.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authentication/exception/IdentityAccessException.java b/nifi-framework-api/src/main/java/org/apache/nifi/authentication/exception/IdentityAccessException.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authentication/exception/IdentityAccessException.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authentication/exception/IdentityAccessException.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authentication/exception/InvalidLoginCredentialsException.java b/nifi-framework-api/src/main/java/org/apache/nifi/authentication/exception/InvalidLoginCredentialsException.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authentication/exception/InvalidLoginCredentialsException.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authentication/exception/InvalidLoginCredentialsException.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authentication/exception/ProviderCreationException.java b/nifi-framework-api/src/main/java/org/apache/nifi/authentication/exception/ProviderCreationException.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authentication/exception/ProviderCreationException.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authentication/exception/ProviderCreationException.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authentication/exception/ProviderDestructionException.java b/nifi-framework-api/src/main/java/org/apache/nifi/authentication/exception/ProviderDestructionException.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authentication/exception/ProviderDestructionException.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authentication/exception/ProviderDestructionException.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/AbstractPolicyBasedAuthorizer.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/AbstractPolicyBasedAuthorizer.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/AbstractPolicyBasedAuthorizer.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/AbstractPolicyBasedAuthorizer.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/AccessDeniedException.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/AccessDeniedException.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/AccessDeniedException.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/AccessDeniedException.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/AccessPolicy.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/AccessPolicy.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/AccessPolicy.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/AccessPolicy.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/AuthorizationRequest.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/AuthorizationRequest.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/AuthorizationRequest.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/AuthorizationRequest.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/AuthorizationResult.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/AuthorizationResult.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/AuthorizationResult.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/AuthorizationResult.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/Authorizer.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/Authorizer.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/Authorizer.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/Authorizer.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/AuthorizerConfigurationContext.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/AuthorizerConfigurationContext.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/AuthorizerConfigurationContext.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/AuthorizerConfigurationContext.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/AuthorizerInitializationContext.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/AuthorizerInitializationContext.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/AuthorizerInitializationContext.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/AuthorizerInitializationContext.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/AuthorizerLookup.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/AuthorizerLookup.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/AuthorizerLookup.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/AuthorizerLookup.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/Group.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/Group.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/Group.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/Group.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/RequestAction.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/RequestAction.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/RequestAction.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/RequestAction.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/Resource.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/Resource.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/Resource.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/Resource.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/User.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/User.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/User.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/User.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/UserContextKeys.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/UserContextKeys.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/UserContextKeys.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/UserContextKeys.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/UsersAndAccessPolicies.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/UsersAndAccessPolicies.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/UsersAndAccessPolicies.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/UsersAndAccessPolicies.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/annotation/AuthorizerContext.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/annotation/AuthorizerContext.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/annotation/AuthorizerContext.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/annotation/AuthorizerContext.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/exception/AuthorizationAccessException.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/exception/AuthorizationAccessException.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/exception/AuthorizationAccessException.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/exception/AuthorizationAccessException.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/exception/AuthorizerCreationException.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/exception/AuthorizerCreationException.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/exception/AuthorizerCreationException.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/exception/AuthorizerCreationException.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/exception/AuthorizerDestructionException.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/exception/AuthorizerDestructionException.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/exception/AuthorizerDestructionException.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/exception/AuthorizerDestructionException.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/resource/Authorizable.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/resource/Authorizable.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/resource/Authorizable.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/resource/Authorizable.java diff --git a/nifi-api/src/main/java/org/apache/nifi/authorization/user/NiFiUser.java b/nifi-framework-api/src/main/java/org/apache/nifi/authorization/user/NiFiUser.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/authorization/user/NiFiUser.java rename to nifi-framework-api/src/main/java/org/apache/nifi/authorization/user/NiFiUser.java diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceAuthorizableFactory.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/ProvenanceAuthorizableFactory.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceAuthorizableFactory.java rename to nifi-framework-api/src/main/java/org/apache/nifi/provenance/ProvenanceAuthorizableFactory.java diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceQueryableIndex.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/ProvenanceQueryableIndex.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceQueryableIndex.java rename to nifi-framework-api/src/main/java/org/apache/nifi/provenance/ProvenanceQueryableIndex.java diff --git a/nifi-api/src/test/java/org/apache/nifi/authorization/TestAbstractPolicyBasedAuthorizer.java b/nifi-framework-api/src/test/java/org/apache/nifi/authorization/TestAbstractPolicyBasedAuthorizer.java similarity index 100% rename from nifi-api/src/test/java/org/apache/nifi/authorization/TestAbstractPolicyBasedAuthorizer.java rename to nifi-framework-api/src/test/java/org/apache/nifi/authorization/TestAbstractPolicyBasedAuthorizer.java diff --git a/nifi-api/src/test/java/org/apache/nifi/authorization/TestAccessPolicy.java b/nifi-framework-api/src/test/java/org/apache/nifi/authorization/TestAccessPolicy.java similarity index 100% rename from nifi-api/src/test/java/org/apache/nifi/authorization/TestAccessPolicy.java rename to nifi-framework-api/src/test/java/org/apache/nifi/authorization/TestAccessPolicy.java diff --git a/nifi-api/src/test/java/org/apache/nifi/authorization/TestGroup.java b/nifi-framework-api/src/test/java/org/apache/nifi/authorization/TestGroup.java similarity index 100% rename from nifi-api/src/test/java/org/apache/nifi/authorization/TestGroup.java rename to nifi-framework-api/src/test/java/org/apache/nifi/authorization/TestGroup.java diff --git a/nifi-api/src/test/java/org/apache/nifi/authorization/TestUser.java b/nifi-framework-api/src/test/java/org/apache/nifi/authorization/TestUser.java similarity index 100% rename from nifi-api/src/test/java/org/apache/nifi/authorization/TestUser.java rename to nifi-framework-api/src/test/java/org/apache/nifi/authorization/TestUser.java diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/pom.xml index 2aac20980ccf..5383803402b8 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/pom.xml @@ -30,6 +30,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-framework-core-api diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-authorizer/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-authorizer/pom.xml index ee9f85a3a9a2..ec1eee3793bd 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-authorizer/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-authorizer/pom.xml @@ -61,6 +61,10 @@ + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-framework-core diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-file-authorizer/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-file-authorizer/pom.xml index c7fbb2cfa7b9..8ea509c27d55 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-file-authorizer/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-file-authorizer/pom.xml @@ -77,6 +77,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-utils diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-authorization/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-authorization/pom.xml index f1a6c2871831..59d5b2fefaf5 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-authorization/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-authorization/pom.xml @@ -27,6 +27,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-expression-language diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/pom.xml index 8a06467621f9..f74d1ae5d883 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/pom.xml @@ -29,6 +29,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-properties diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/pom.xml index 2d0f94b84739..d6d101c71a07 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/pom.xml @@ -38,6 +38,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-site-to-site-client diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site/pom.xml index 74ff7973a79d..aa0034410854 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site/pom.xml @@ -34,6 +34,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-properties diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-user-actions/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-user-actions/pom.xml index ee6d17525d41..0a07235a6f3b 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-user-actions/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-user-actions/pom.xml @@ -27,5 +27,9 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-content-viewer/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-content-viewer/pom.xml index d66c4ca66861..4f23f028b585 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-content-viewer/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-content-viewer/pom.xml @@ -31,6 +31,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-web-content-access diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-optimistic-locking/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-optimistic-locking/pom.xml index f38376b5ba67..df32b5422903 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-optimistic-locking/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-optimistic-locking/pom.xml @@ -27,6 +27,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-administration diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/pom.xml index 97a90d3efdae..61ecc5e18416 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/pom.xml @@ -69,6 +69,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-web-utils diff --git a/nifi-nar-bundles/nifi-kerberos-iaa-providers-bundle/nifi-kerberos-iaa-providers/pom.xml b/nifi-nar-bundles/nifi-kerberos-iaa-providers-bundle/nifi-kerberos-iaa-providers/pom.xml index 04ef8f09260a..0e16538459bd 100644 --- a/nifi-nar-bundles/nifi-kerberos-iaa-providers-bundle/nifi-kerberos-iaa-providers/pom.xml +++ b/nifi-nar-bundles/nifi-kerberos-iaa-providers-bundle/nifi-kerberos-iaa-providers/pom.xml @@ -27,6 +27,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-utils diff --git a/nifi-nar-bundles/nifi-ldap-iaa-providers-bundle/nifi-ldap-iaa-providers/pom.xml b/nifi-nar-bundles/nifi-ldap-iaa-providers-bundle/nifi-ldap-iaa-providers/pom.xml index aafb4e37fa37..de265e08c52a 100644 --- a/nifi-nar-bundles/nifi-ldap-iaa-providers-bundle/nifi-ldap-iaa-providers/pom.xml +++ b/nifi-nar-bundles/nifi-ldap-iaa-providers-bundle/nifi-ldap-iaa-providers/pom.xml @@ -27,6 +27,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-utils From 09b4ca850b250401aa2271334903742cc7f11392 Mon Sep 17 00:00:00 2001 From: Aldrin Piri Date: Wed, 13 Jul 2016 17:26:40 -0400 Subject: [PATCH 03/12] Removed deprecated OnConfigured and associated references. --- .../apache/nifi/components/PropertyValue.java | 38 +++++++++---------- .../exception/StateTooLargeException.java | 2 + .../nifi/components/state/StateProvider.java | 0 .../StateProviderInitializationContext.java | 0 .../org/apache/nifi/controller/Snippet.java | 0 .../apache/nifi/controller/Triggerable.java | 0 6 files changed, 21 insertions(+), 19 deletions(-) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/components/state/StateProvider.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/components/state/StateProviderInitializationContext.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/Snippet.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/Triggerable.java (100%) diff --git a/nifi-api/src/main/java/org/apache/nifi/components/PropertyValue.java b/nifi-api/src/main/java/org/apache/nifi/components/PropertyValue.java index 72dcc2a4c8ed..edaddd7d5565 100644 --- a/nifi-api/src/main/java/org/apache/nifi/components/PropertyValue.java +++ b/nifi-api/src/main/java/org/apache/nifi/components/PropertyValue.java @@ -36,41 +36,41 @@ public interface PropertyValue { /** * @return the raw property value as a string */ - public String getValue(); + String getValue(); /** * @return an integer representation of the property value, or * null if not set * @throws NumberFormatException if not able to parse */ - public Integer asInteger(); + Integer asInteger(); /** * @return a Long representation of the property value, or null * if not set * @throws NumberFormatException if not able to parse */ - public Long asLong(); + Long asLong(); /** * @return a Boolean representation of the property value, or * null if not set */ - public Boolean asBoolean(); + Boolean asBoolean(); /** * @return a Float representation of the property value, or * null if not set * @throws NumberFormatException if not able to parse */ - public Float asFloat(); + Float asFloat(); /** * @return a Double representation of the property value, of * null if not set * @throws NumberFormatException if not able to parse */ - public Double asDouble(); + Double asDouble(); /** * @param timeUnit specifies the TimeUnit to convert the time duration into @@ -78,7 +78,7 @@ public interface PropertyValue { * in terms of the specified TimeUnit; if the property is not set, returns * null */ - public Long asTimePeriod(TimeUnit timeUnit); + Long asTimePeriod(TimeUnit timeUnit); /** * @@ -87,14 +87,14 @@ public interface PropertyValue { * in terms of the specified DataUnit; if hte property is not set, returns * null */ - public Double asDataSize(DataUnit dataUnit); + Double asDataSize(DataUnit dataUnit); /** * @return the ControllerService whose identifier is the raw value of * this, or null if either the value is not set or * the value does not identify a ControllerService */ - public ControllerService asControllerService(); + ControllerService asControllerService(); /** * @param the generic type of the controller service @@ -110,14 +110,14 @@ public interface PropertyValue { * serviceType or if serviceType references a * class that is not an interface */ - public T asControllerService(Class serviceType) throws IllegalArgumentException; + T asControllerService(Class serviceType) throws IllegalArgumentException; /** * @return true if the user has configured a value, or if the * {@link PropertyDescriptor} for the associated property has a default * value, false otherwise */ - public boolean isSet(); + boolean isSet(); /** *

@@ -132,7 +132,7 @@ public interface PropertyValue { * @throws ProcessException if the Expression cannot be compiled or evaluating * the Expression against the given attributes causes an Exception to be thrown */ - public PropertyValue evaluateAttributeExpressions() throws ProcessException; + PropertyValue evaluateAttributeExpressions() throws ProcessException; /** *

@@ -148,7 +148,7 @@ public interface PropertyValue { * @throws ProcessException if the Expression cannot be compiled or evaluating the Expression against * the given attributes causes an Exception to be thrown */ - public PropertyValue evaluateAttributeExpressions(Map attributes) throws ProcessException; + PropertyValue evaluateAttributeExpressions(Map attributes) throws ProcessException; /** *

@@ -167,7 +167,7 @@ public interface PropertyValue { * @throws ProcessException if the Expression cannot be compiled or evaluating the Expression against * the given attributes causes an Exception to be thrown */ - public PropertyValue evaluateAttributeExpressions(Map attributes, AttributeValueDecorator decorator) throws ProcessException; + PropertyValue evaluateAttributeExpressions(Map attributes, AttributeValueDecorator decorator) throws ProcessException; /** *

@@ -183,7 +183,7 @@ public interface PropertyValue { * @throws ProcessException if the Expression cannot be compiled or evaluating * the Expression against the given attributes causes an Exception to be thrown */ - public PropertyValue evaluateAttributeExpressions(FlowFile flowFile) throws ProcessException; + PropertyValue evaluateAttributeExpressions(FlowFile flowFile) throws ProcessException; /** *

@@ -202,7 +202,7 @@ public interface PropertyValue { * @throws ProcessException if the Expression cannot be compiled or evaluating * the Expression against the given attributes causes an Exception to be thrown */ - public PropertyValue evaluateAttributeExpressions(FlowFile flowFile, Map additionalAttributes) throws ProcessException; + PropertyValue evaluateAttributeExpressions(FlowFile flowFile, Map additionalAttributes) throws ProcessException; /** *

@@ -222,7 +222,7 @@ public interface PropertyValue { * @throws ProcessException if the Expression cannot be compiled or evaluating * the Expression against the given attributes causes an Exception to be thrown */ - public PropertyValue evaluateAttributeExpressions(FlowFile flowFile, Map additionalAttributes, AttributeValueDecorator decorator) throws ProcessException; + PropertyValue evaluateAttributeExpressions(FlowFile flowFile, Map additionalAttributes, AttributeValueDecorator decorator) throws ProcessException; /** *

@@ -240,7 +240,7 @@ public interface PropertyValue { * @throws ProcessException if the Expression cannot be compiled or evaluating * the Expression against the given attributes causes an Exception to be thrown */ - public PropertyValue evaluateAttributeExpressions(AttributeValueDecorator decorator) throws ProcessException; + PropertyValue evaluateAttributeExpressions(AttributeValueDecorator decorator) throws ProcessException; /** *

@@ -260,5 +260,5 @@ public interface PropertyValue { * @throws ProcessException if the Expression cannot be compiled or evaluating * the Expression against the given attributes causes an Exception to be thrown */ - public PropertyValue evaluateAttributeExpressions(FlowFile flowFile, AttributeValueDecorator decorator) throws ProcessException; + PropertyValue evaluateAttributeExpressions(FlowFile flowFile, AttributeValueDecorator decorator) throws ProcessException; } diff --git a/nifi-api/src/main/java/org/apache/nifi/components/state/exception/StateTooLargeException.java b/nifi-api/src/main/java/org/apache/nifi/components/state/exception/StateTooLargeException.java index 99546ae55a2f..5461b40b306f 100644 --- a/nifi-api/src/main/java/org/apache/nifi/components/state/exception/StateTooLargeException.java +++ b/nifi-api/src/main/java/org/apache/nifi/components/state/exception/StateTooLargeException.java @@ -17,6 +17,8 @@ package org.apache.nifi.components.state.exception; +import org.apache.nifi.components.state.StateManager; + import java.io.IOException; /** diff --git a/nifi-api/src/main/java/org/apache/nifi/components/state/StateProvider.java b/nifi-framework-api/src/main/java/org/apache/nifi/components/state/StateProvider.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/components/state/StateProvider.java rename to nifi-framework-api/src/main/java/org/apache/nifi/components/state/StateProvider.java diff --git a/nifi-api/src/main/java/org/apache/nifi/components/state/StateProviderInitializationContext.java b/nifi-framework-api/src/main/java/org/apache/nifi/components/state/StateProviderInitializationContext.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/components/state/StateProviderInitializationContext.java rename to nifi-framework-api/src/main/java/org/apache/nifi/components/state/StateProviderInitializationContext.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/Snippet.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/Snippet.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/Snippet.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/Snippet.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/Triggerable.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/Triggerable.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/Triggerable.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/Triggerable.java From 6e6dc66a38085b8fd77e9ade715fc6e4dacbd6fd Mon Sep 17 00:00:00 2001 From: Aldrin Piri Date: Wed, 13 Jul 2016 17:31:12 -0400 Subject: [PATCH 04/12] Moving repository and queue interfacves to nifi-framework-api. --- .../java/org/apache/nifi/controller/queue/DropFlowFileState.java | 0 .../java/org/apache/nifi/controller/queue/DropFlowFileStatus.java | 0 .../main/java/org/apache/nifi/controller/queue/FlowFileQueue.java | 0 .../java/org/apache/nifi/controller/queue/FlowFileSummary.java | 0 .../java/org/apache/nifi/controller/queue/ListFlowFileState.java | 0 .../java/org/apache/nifi/controller/queue/ListFlowFileStatus.java | 0 .../main/java/org/apache/nifi/controller/queue/SortColumn.java | 0 .../main/java/org/apache/nifi/controller/queue/SortDirection.java | 0 .../org/apache/nifi/controller/repository/ContentRepository.java | 0 .../org/apache/nifi/controller/repository/FlowFileRecord.java | 0 .../org/apache/nifi/controller/repository/FlowFileRepository.java | 0 .../apache/nifi/controller/repository/FlowFileSwapManager.java | 0 .../nifi/controller/repository/IncompleteSwapFileException.java | 0 .../java/org/apache/nifi/controller/repository/QueueProvider.java | 0 .../org/apache/nifi/controller/repository/RepositoryRecord.java | 0 .../apache/nifi/controller/repository/RepositoryRecordType.java | 0 .../java/org/apache/nifi/controller/repository/SwapContents.java | 0 .../controller/repository/SwapManagerInitializationContext.java | 0 .../java/org/apache/nifi/controller/repository/SwapSummary.java | 0 .../org/apache/nifi/controller/repository/claim/ContentClaim.java | 0 .../apache/nifi/controller/repository/claim/ResourceClaim.java | 0 .../nifi/controller/repository/claim/ResourceClaimManager.java | 0 22 files changed, 0 insertions(+), 0 deletions(-) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/queue/DropFlowFileState.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/queue/DropFlowFileStatus.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/queue/FlowFileQueue.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/queue/FlowFileSummary.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/queue/ListFlowFileState.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/queue/ListFlowFileStatus.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/queue/SortColumn.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/queue/SortDirection.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/repository/ContentRepository.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/repository/FlowFileRecord.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/repository/FlowFileRepository.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/repository/FlowFileSwapManager.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/repository/IncompleteSwapFileException.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/repository/QueueProvider.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/repository/RepositoryRecord.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/repository/RepositoryRecordType.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/repository/SwapContents.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/repository/SwapManagerInitializationContext.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/repository/SwapSummary.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/repository/claim/ContentClaim.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/repository/claim/ResourceClaim.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/repository/claim/ResourceClaimManager.java (100%) diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/queue/DropFlowFileState.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/DropFlowFileState.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/queue/DropFlowFileState.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/DropFlowFileState.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/queue/DropFlowFileStatus.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/DropFlowFileStatus.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/queue/DropFlowFileStatus.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/DropFlowFileStatus.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/queue/FlowFileQueue.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/FlowFileQueue.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/queue/FlowFileQueue.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/FlowFileQueue.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/queue/FlowFileSummary.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/FlowFileSummary.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/queue/FlowFileSummary.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/FlowFileSummary.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/queue/ListFlowFileState.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/ListFlowFileState.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/queue/ListFlowFileState.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/ListFlowFileState.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/queue/ListFlowFileStatus.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/ListFlowFileStatus.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/queue/ListFlowFileStatus.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/ListFlowFileStatus.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/queue/SortColumn.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/SortColumn.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/queue/SortColumn.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/SortColumn.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/queue/SortDirection.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/SortDirection.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/queue/SortDirection.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/SortDirection.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/repository/ContentRepository.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/ContentRepository.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/repository/ContentRepository.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/ContentRepository.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/repository/FlowFileRecord.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/FlowFileRecord.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/repository/FlowFileRecord.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/FlowFileRecord.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/repository/FlowFileRepository.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/FlowFileRepository.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/repository/FlowFileRepository.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/FlowFileRepository.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/repository/FlowFileSwapManager.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/FlowFileSwapManager.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/repository/FlowFileSwapManager.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/FlowFileSwapManager.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/repository/IncompleteSwapFileException.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/IncompleteSwapFileException.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/repository/IncompleteSwapFileException.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/IncompleteSwapFileException.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/repository/QueueProvider.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/QueueProvider.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/repository/QueueProvider.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/QueueProvider.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/repository/RepositoryRecord.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/RepositoryRecord.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/repository/RepositoryRecord.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/RepositoryRecord.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/repository/RepositoryRecordType.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/RepositoryRecordType.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/repository/RepositoryRecordType.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/RepositoryRecordType.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/repository/SwapContents.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/SwapContents.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/repository/SwapContents.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/SwapContents.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/repository/SwapManagerInitializationContext.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/SwapManagerInitializationContext.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/repository/SwapManagerInitializationContext.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/SwapManagerInitializationContext.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/repository/SwapSummary.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/SwapSummary.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/repository/SwapSummary.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/SwapSummary.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/repository/claim/ContentClaim.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/claim/ContentClaim.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/repository/claim/ContentClaim.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/claim/ContentClaim.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/repository/claim/ResourceClaim.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/claim/ResourceClaim.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/repository/claim/ResourceClaim.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/claim/ResourceClaim.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/repository/claim/ResourceClaimManager.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/claim/ResourceClaimManager.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/repository/claim/ResourceClaimManager.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/repository/claim/ResourceClaimManager.java From d75a591e196dd297a2bc9167be4487b876edab7a Mon Sep 17 00:00:00 2001 From: Aldrin Piri Date: Wed, 13 Jul 2016 17:43:10 -0400 Subject: [PATCH 05/12] Migrating history components to nifi-framework-api. --- .../nifi/controller/status/history/ComponentStatusRepository.java | 0 .../apache/nifi/controller/status/history/MetricDescriptor.java | 0 .../org/apache/nifi/controller/status/history/StatusHistory.java | 0 .../org/apache/nifi/controller/status/history/StatusSnapshot.java | 0 .../org/apache/nifi/controller/status/history/ValueMapper.java | 0 .../org/apache/nifi/controller/status/history/ValueReducer.java | 0 6 files changed, 0 insertions(+), 0 deletions(-) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/status/history/ComponentStatusRepository.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/status/history/MetricDescriptor.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/status/history/StatusHistory.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/status/history/StatusSnapshot.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/status/history/ValueMapper.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/controller/status/history/ValueReducer.java (100%) diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/status/history/ComponentStatusRepository.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/status/history/ComponentStatusRepository.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/status/history/ComponentStatusRepository.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/status/history/ComponentStatusRepository.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/status/history/MetricDescriptor.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/status/history/MetricDescriptor.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/status/history/MetricDescriptor.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/status/history/MetricDescriptor.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/status/history/StatusHistory.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/status/history/StatusHistory.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/status/history/StatusHistory.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/status/history/StatusHistory.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/status/history/StatusSnapshot.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/status/history/StatusSnapshot.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/status/history/StatusSnapshot.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/status/history/StatusSnapshot.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/status/history/ValueMapper.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/status/history/ValueMapper.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/status/history/ValueMapper.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/status/history/ValueMapper.java diff --git a/nifi-api/src/main/java/org/apache/nifi/controller/status/history/ValueReducer.java b/nifi-framework-api/src/main/java/org/apache/nifi/controller/status/history/ValueReducer.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/controller/status/history/ValueReducer.java rename to nifi-framework-api/src/main/java/org/apache/nifi/controller/status/history/ValueReducer.java From 7403dceb8d821a1541001ea0bd0388975b4a42e8 Mon Sep 17 00:00:00 2001 From: Aldrin Piri Date: Wed, 13 Jul 2016 17:45:56 -0400 Subject: [PATCH 06/12] Marking FlowFilePrioritizer as deprecated. --- .../main/java/org/apache/nifi/flowfile/FlowFilePrioritizer.java | 1 + 1 file changed, 1 insertion(+) diff --git a/nifi-api/src/main/java/org/apache/nifi/flowfile/FlowFilePrioritizer.java b/nifi-api/src/main/java/org/apache/nifi/flowfile/FlowFilePrioritizer.java index 684f454f5709..5ee730d4ccfd 100644 --- a/nifi-api/src/main/java/org/apache/nifi/flowfile/FlowFilePrioritizer.java +++ b/nifi-api/src/main/java/org/apache/nifi/flowfile/FlowFilePrioritizer.java @@ -25,5 +25,6 @@ * extracted to be used as an attribute of the flow file. * */ +@Deprecated public interface FlowFilePrioritizer extends Comparator { } From e0e8ce0f031baee1e50683f5325aabc6cae987e0 Mon Sep 17 00:00:00 2001 From: Aldrin Piri Date: Thu, 14 Jul 2016 09:46:20 -0400 Subject: [PATCH 07/12] Migrating EventReporter to nifi-framework-api. --- nifi-commons/nifi-site-to-site-client/pom.xml | 4 ++++ .../src/main/java/org/apache/nifi/events/EventReporter.java | 0 2 files changed, 4 insertions(+) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/events/EventReporter.java (100%) diff --git a/nifi-commons/nifi-site-to-site-client/pom.xml b/nifi-commons/nifi-site-to-site-client/pom.xml index 4bd09135e155..63e5c125eeb8 100644 --- a/nifi-commons/nifi-site-to-site-client/pom.xml +++ b/nifi-commons/nifi-site-to-site-client/pom.xml @@ -29,6 +29,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-utils diff --git a/nifi-api/src/main/java/org/apache/nifi/events/EventReporter.java b/nifi-framework-api/src/main/java/org/apache/nifi/events/EventReporter.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/events/EventReporter.java rename to nifi-framework-api/src/main/java/org/apache/nifi/events/EventReporter.java From c895c248f5bf5830c9d3485ede2181999ac40735 Mon Sep 17 00:00:00 2001 From: Aldrin Piri Date: Thu, 14 Jul 2016 09:57:12 -0400 Subject: [PATCH 08/12] Migrating provenance search items to nifi-framework-api. --- nifi-commons/nifi-data-provenance-utils/pom.xml | 4 ++++ .../apache/nifi/provenance/lineage/ComputeLineageResult.java | 4 ++-- .../nifi/provenance/lineage/ComputeLineageSubmission.java | 0 .../main/java/org/apache/nifi/provenance/lineage/Lineage.java | 0 .../nifi/provenance/lineage/LineageComputationType.java | 0 .../java/org/apache/nifi/provenance/lineage/LineageEdge.java | 0 .../java/org/apache/nifi/provenance/lineage/LineageNode.java | 0 .../org/apache/nifi/provenance/lineage/LineageNodeType.java | 0 .../nifi/provenance/lineage/ProvenanceEventLineageNode.java | 0 .../main/java/org/apache/nifi/provenance/search/Query.java | 0 .../java/org/apache/nifi/provenance/search/QueryResult.java | 0 .../org/apache/nifi/provenance/search/QuerySubmission.java | 0 .../java/org/apache/nifi/provenance/search/SearchTerm.java | 0 .../java/org/apache/nifi/provenance/search/SearchTerms.java | 0 .../org/apache/nifi/provenance/search/SearchableField.java | 0 .../apache/nifi/provenance/search/SearchableFieldType.java | 0 16 files changed, 6 insertions(+), 2 deletions(-) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/provenance/lineage/ComputeLineageResult.java (95%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/provenance/lineage/ComputeLineageSubmission.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/provenance/lineage/Lineage.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/provenance/lineage/LineageComputationType.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/provenance/lineage/LineageEdge.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/provenance/lineage/LineageNode.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/provenance/lineage/LineageNodeType.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/provenance/lineage/ProvenanceEventLineageNode.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/provenance/search/Query.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/provenance/search/QueryResult.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/provenance/search/QuerySubmission.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/provenance/search/SearchTerm.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/provenance/search/SearchTerms.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/provenance/search/SearchableField.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/provenance/search/SearchableFieldType.java (100%) diff --git a/nifi-commons/nifi-data-provenance-utils/pom.xml b/nifi-commons/nifi-data-provenance-utils/pom.xml index e379541f7846..b1413c5ed04e 100644 --- a/nifi-commons/nifi-data-provenance-utils/pom.xml +++ b/nifi-commons/nifi-data-provenance-utils/pom.xml @@ -26,6 +26,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-utils diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/lineage/ComputeLineageResult.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/lineage/ComputeLineageResult.java similarity index 95% rename from nifi-api/src/main/java/org/apache/nifi/provenance/lineage/ComputeLineageResult.java rename to nifi-framework-api/src/main/java/org/apache/nifi/provenance/lineage/ComputeLineageResult.java index e754ff7d1a7b..4d0f9919d458 100644 --- a/nifi-api/src/main/java/org/apache/nifi/provenance/lineage/ComputeLineageResult.java +++ b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/lineage/ComputeLineageResult.java @@ -27,12 +27,12 @@ public interface ComputeLineageResult { /** * @return all nodes for the graph */ - public List getNodes(); + List getNodes(); /** * @return all links for the graph */ - public List getEdges(); + List getEdges(); /** * @return the date at which this AsynchronousLineageResult will expire diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/lineage/ComputeLineageSubmission.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/lineage/ComputeLineageSubmission.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/provenance/lineage/ComputeLineageSubmission.java rename to nifi-framework-api/src/main/java/org/apache/nifi/provenance/lineage/ComputeLineageSubmission.java diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/lineage/Lineage.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/lineage/Lineage.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/provenance/lineage/Lineage.java rename to nifi-framework-api/src/main/java/org/apache/nifi/provenance/lineage/Lineage.java diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/lineage/LineageComputationType.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/lineage/LineageComputationType.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/provenance/lineage/LineageComputationType.java rename to nifi-framework-api/src/main/java/org/apache/nifi/provenance/lineage/LineageComputationType.java diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/lineage/LineageEdge.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/lineage/LineageEdge.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/provenance/lineage/LineageEdge.java rename to nifi-framework-api/src/main/java/org/apache/nifi/provenance/lineage/LineageEdge.java diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/lineage/LineageNode.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/lineage/LineageNode.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/provenance/lineage/LineageNode.java rename to nifi-framework-api/src/main/java/org/apache/nifi/provenance/lineage/LineageNode.java diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/lineage/LineageNodeType.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/lineage/LineageNodeType.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/provenance/lineage/LineageNodeType.java rename to nifi-framework-api/src/main/java/org/apache/nifi/provenance/lineage/LineageNodeType.java diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/lineage/ProvenanceEventLineageNode.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/lineage/ProvenanceEventLineageNode.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/provenance/lineage/ProvenanceEventLineageNode.java rename to nifi-framework-api/src/main/java/org/apache/nifi/provenance/lineage/ProvenanceEventLineageNode.java diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/search/Query.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/search/Query.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/provenance/search/Query.java rename to nifi-framework-api/src/main/java/org/apache/nifi/provenance/search/Query.java diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/search/QueryResult.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/search/QueryResult.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/provenance/search/QueryResult.java rename to nifi-framework-api/src/main/java/org/apache/nifi/provenance/search/QueryResult.java diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/search/QuerySubmission.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/search/QuerySubmission.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/provenance/search/QuerySubmission.java rename to nifi-framework-api/src/main/java/org/apache/nifi/provenance/search/QuerySubmission.java diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/search/SearchTerm.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/search/SearchTerm.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/provenance/search/SearchTerm.java rename to nifi-framework-api/src/main/java/org/apache/nifi/provenance/search/SearchTerm.java diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/search/SearchTerms.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/search/SearchTerms.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/provenance/search/SearchTerms.java rename to nifi-framework-api/src/main/java/org/apache/nifi/provenance/search/SearchTerms.java diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/search/SearchableField.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/search/SearchableField.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/provenance/search/SearchableField.java rename to nifi-framework-api/src/main/java/org/apache/nifi/provenance/search/SearchableField.java diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/search/SearchableFieldType.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/search/SearchableFieldType.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/provenance/search/SearchableFieldType.java rename to nifi-framework-api/src/main/java/org/apache/nifi/provenance/search/SearchableFieldType.java From 600b664612c51b706c971a47888b7390f37b8ad5 Mon Sep 17 00:00:00 2001 From: Aldrin Piri Date: Thu, 14 Jul 2016 10:11:56 -0400 Subject: [PATCH 09/12] Migrating web package out of nifi-api. Removing ResourceNotFoundException from Javadoc of getEvent in ProvenanceEventRepository. No impls seem to throw this and seems like provenance event repo should not share this web exception. If exception is needed, would prefer to provide that from event repo that is then wrapped by RNFE at controller level. --- .../apache/nifi/provenance/ProvenanceEventRepository.java | 3 --- .../java/org/apache/nifi/reporting/BulletinRepository.java | 4 ++-- .../main/java/org/apache/nifi/remote/RemoteDestination.java | 0 .../java/org/apache/nifi/web/ClusterRequestException.java | 0 .../main/java/org/apache/nifi/web/ComponentDescriptor.java | 0 .../src/main/java/org/apache/nifi/web/ComponentDetails.java | 0 .../main/java/org/apache/nifi/web/ConfigurationAction.java | 0 .../java/org/apache/nifi/web/InvalidRevisionException.java | 0 .../org/apache/nifi/web/NiFiWebConfigurationContext.java | 0 .../apache/nifi/web/NiFiWebConfigurationRequestContext.java | 0 .../main/java/org/apache/nifi/web/NiFiWebRequestContext.java | 0 .../java/org/apache/nifi/web/ResourceNotFoundException.java | 0 .../src/main/java/org/apache/nifi/web/Revision.java | 0 .../src/main/java/org/apache/nifi/web/UiExtensionType.java | 0 .../src/main/java/org/apache/nifi/web/ViewableContent.java | 0 .../src/test/java/org/apache/nifi/web/TestRevision.java | 0 .../nifi-framework/nifi-documentation/pom.xml | 4 ++++ .../nifi-framework/nifi-web/nifi-custom-ui-utilities/pom.xml | 4 ++++ .../nifi-framework/nifi-web/nifi-ui-extension/pom.xml | 4 ++++ nifi-nar-bundles/nifi-media-bundle/nifi-image-viewer/pom.xml | 4 ++++ .../nifi-standard-bundle/nifi-jolt-transform-json-ui/pom.xml | 5 +++++ .../nifi-standard-content-viewer/pom.xml | 4 ++++ .../nifi-update-attribute-ui/pom.xml | 5 +++++ 23 files changed, 32 insertions(+), 5 deletions(-) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/remote/RemoteDestination.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/web/ClusterRequestException.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/web/ComponentDescriptor.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/web/ComponentDetails.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/web/ConfigurationAction.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/web/InvalidRevisionException.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/web/NiFiWebConfigurationContext.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/web/NiFiWebConfigurationRequestContext.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/web/NiFiWebRequestContext.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/web/ResourceNotFoundException.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/web/Revision.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/web/UiExtensionType.java (100%) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/web/ViewableContent.java (100%) rename {nifi-api => nifi-framework-api}/src/test/java/org/apache/nifi/web/TestRevision.java (100%) diff --git a/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceEventRepository.java b/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceEventRepository.java index 260aca53d247..14991ad4b7bb 100644 --- a/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceEventRepository.java +++ b/nifi-api/src/main/java/org/apache/nifi/provenance/ProvenanceEventRepository.java @@ -19,8 +19,6 @@ import java.io.IOException; import java.util.List; -import org.apache.nifi.web.ResourceNotFoundException; - /** * This Repository houses Provenance Events. The repository is responsible for * managing the life-cycle of the events, providing access to the events that it @@ -87,7 +85,6 @@ public interface ProvenanceEventRepository { * @return the Provenance Event Record with the given ID, if it exists, or * {@code null} otherwise * @throws IOException if failure while retrieving event - * @throws ResourceNotFoundException if the component that the event belongs to cannot be found */ ProvenanceEventRecord getEvent(long id) throws IOException; diff --git a/nifi-api/src/main/java/org/apache/nifi/reporting/BulletinRepository.java b/nifi-api/src/main/java/org/apache/nifi/reporting/BulletinRepository.java index 695ed7f5e97d..be0e3f48f87b 100644 --- a/nifi-api/src/main/java/org/apache/nifi/reporting/BulletinRepository.java +++ b/nifi-api/src/main/java/org/apache/nifi/reporting/BulletinRepository.java @@ -25,8 +25,8 @@ */ public interface BulletinRepository { - public static final int MAX_BULLETINS_PER_COMPONENT = 5; - public static final int MAX_BULLETINS_FOR_CONTROLLER = 10; + int MAX_BULLETINS_PER_COMPONENT = 5; + int MAX_BULLETINS_FOR_CONTROLLER = 10; /** * Adds a Bulletin to the repository. diff --git a/nifi-api/src/main/java/org/apache/nifi/remote/RemoteDestination.java b/nifi-framework-api/src/main/java/org/apache/nifi/remote/RemoteDestination.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/remote/RemoteDestination.java rename to nifi-framework-api/src/main/java/org/apache/nifi/remote/RemoteDestination.java diff --git a/nifi-api/src/main/java/org/apache/nifi/web/ClusterRequestException.java b/nifi-framework-api/src/main/java/org/apache/nifi/web/ClusterRequestException.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/web/ClusterRequestException.java rename to nifi-framework-api/src/main/java/org/apache/nifi/web/ClusterRequestException.java diff --git a/nifi-api/src/main/java/org/apache/nifi/web/ComponentDescriptor.java b/nifi-framework-api/src/main/java/org/apache/nifi/web/ComponentDescriptor.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/web/ComponentDescriptor.java rename to nifi-framework-api/src/main/java/org/apache/nifi/web/ComponentDescriptor.java diff --git a/nifi-api/src/main/java/org/apache/nifi/web/ComponentDetails.java b/nifi-framework-api/src/main/java/org/apache/nifi/web/ComponentDetails.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/web/ComponentDetails.java rename to nifi-framework-api/src/main/java/org/apache/nifi/web/ComponentDetails.java diff --git a/nifi-api/src/main/java/org/apache/nifi/web/ConfigurationAction.java b/nifi-framework-api/src/main/java/org/apache/nifi/web/ConfigurationAction.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/web/ConfigurationAction.java rename to nifi-framework-api/src/main/java/org/apache/nifi/web/ConfigurationAction.java diff --git a/nifi-api/src/main/java/org/apache/nifi/web/InvalidRevisionException.java b/nifi-framework-api/src/main/java/org/apache/nifi/web/InvalidRevisionException.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/web/InvalidRevisionException.java rename to nifi-framework-api/src/main/java/org/apache/nifi/web/InvalidRevisionException.java diff --git a/nifi-api/src/main/java/org/apache/nifi/web/NiFiWebConfigurationContext.java b/nifi-framework-api/src/main/java/org/apache/nifi/web/NiFiWebConfigurationContext.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/web/NiFiWebConfigurationContext.java rename to nifi-framework-api/src/main/java/org/apache/nifi/web/NiFiWebConfigurationContext.java diff --git a/nifi-api/src/main/java/org/apache/nifi/web/NiFiWebConfigurationRequestContext.java b/nifi-framework-api/src/main/java/org/apache/nifi/web/NiFiWebConfigurationRequestContext.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/web/NiFiWebConfigurationRequestContext.java rename to nifi-framework-api/src/main/java/org/apache/nifi/web/NiFiWebConfigurationRequestContext.java diff --git a/nifi-api/src/main/java/org/apache/nifi/web/NiFiWebRequestContext.java b/nifi-framework-api/src/main/java/org/apache/nifi/web/NiFiWebRequestContext.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/web/NiFiWebRequestContext.java rename to nifi-framework-api/src/main/java/org/apache/nifi/web/NiFiWebRequestContext.java diff --git a/nifi-api/src/main/java/org/apache/nifi/web/ResourceNotFoundException.java b/nifi-framework-api/src/main/java/org/apache/nifi/web/ResourceNotFoundException.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/web/ResourceNotFoundException.java rename to nifi-framework-api/src/main/java/org/apache/nifi/web/ResourceNotFoundException.java diff --git a/nifi-api/src/main/java/org/apache/nifi/web/Revision.java b/nifi-framework-api/src/main/java/org/apache/nifi/web/Revision.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/web/Revision.java rename to nifi-framework-api/src/main/java/org/apache/nifi/web/Revision.java diff --git a/nifi-api/src/main/java/org/apache/nifi/web/UiExtensionType.java b/nifi-framework-api/src/main/java/org/apache/nifi/web/UiExtensionType.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/web/UiExtensionType.java rename to nifi-framework-api/src/main/java/org/apache/nifi/web/UiExtensionType.java diff --git a/nifi-api/src/main/java/org/apache/nifi/web/ViewableContent.java b/nifi-framework-api/src/main/java/org/apache/nifi/web/ViewableContent.java similarity index 100% rename from nifi-api/src/main/java/org/apache/nifi/web/ViewableContent.java rename to nifi-framework-api/src/main/java/org/apache/nifi/web/ViewableContent.java diff --git a/nifi-api/src/test/java/org/apache/nifi/web/TestRevision.java b/nifi-framework-api/src/test/java/org/apache/nifi/web/TestRevision.java similarity index 100% rename from nifi-api/src/test/java/org/apache/nifi/web/TestRevision.java rename to nifi-framework-api/src/test/java/org/apache/nifi/web/TestRevision.java diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-documentation/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-documentation/pom.xml index d8c38895f06e..ed32625cf0a6 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-documentation/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-documentation/pom.xml @@ -26,6 +26,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-properties diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-custom-ui-utilities/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-custom-ui-utilities/pom.xml index e90220a891d6..e5bd66422ee3 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-custom-ui-utilities/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-custom-ui-utilities/pom.xml @@ -26,6 +26,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + javax.servlet javax.servlet-api diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-ui-extension/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-ui-extension/pom.xml index 013c5c9b6d3c..dd6a8ba857ab 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-ui-extension/pom.xml +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-ui-extension/pom.xml @@ -27,6 +27,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + org.apache.nifi nifi-user-actions diff --git a/nifi-nar-bundles/nifi-media-bundle/nifi-image-viewer/pom.xml b/nifi-nar-bundles/nifi-media-bundle/nifi-image-viewer/pom.xml index 71a6bd7df8ea..ca1474828b7b 100755 --- a/nifi-nar-bundles/nifi-media-bundle/nifi-image-viewer/pom.xml +++ b/nifi-nar-bundles/nifi-media-bundle/nifi-image-viewer/pom.xml @@ -32,6 +32,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + javax.servlet javax.servlet-api diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-jolt-transform-json-ui/pom.xml b/nifi-nar-bundles/nifi-standard-bundle/nifi-jolt-transform-json-ui/pom.xml index a04432ed93b2..b70b52f9015b 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-jolt-transform-json-ui/pom.xml +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-jolt-transform-json-ui/pom.xml @@ -38,6 +38,11 @@ language governing permissions and limitations under the License. --> nifi-api 1.0.0-SNAPSHOT + + org.apache.nifi + nifi-framework-api + 1.0.0-SNAPSHOT + org.apache.nifi nifi-utils diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-content-viewer/pom.xml b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-content-viewer/pom.xml index a40ba970436e..e1f2866a536b 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-content-viewer/pom.xml +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-content-viewer/pom.xml @@ -55,6 +55,10 @@ org.apache.nifi nifi-api + + org.apache.nifi + nifi-framework-api + javax.servlet javax.servlet-api diff --git a/nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui/pom.xml b/nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui/pom.xml index 92153a980fe2..4cfc2f1c5778 100644 --- a/nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui/pom.xml +++ b/nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui/pom.xml @@ -37,6 +37,11 @@ nifi-api provided + + org.apache.nifi + nifi-framework-api + provided + org.apache.nifi nifi-utils From 6f59be8972e0770401f568b9d4f06f655f3126e3 Mon Sep 17 00:00:00 2001 From: Aldrin Piri Date: Thu, 14 Jul 2016 11:28:15 -0400 Subject: [PATCH 10/12] Adjusting sleep for GetSNMPTest and providing assertion that a flowfile was transferred before attempting to access. --- .../java/org/apache/nifi/snmp/processors/GetSNMPTest.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/GetSNMPTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/GetSNMPTest.java index 1d40e25416a8..48be787d36d6 100644 --- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/GetSNMPTest.java +++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/GetSNMPTest.java @@ -360,8 +360,10 @@ private void testTarget(Snmp snmp, int port, UserTarget target, String securityN } runner.run(); - Thread.sleep(200); + Thread.sleep(500); + // Assert that a file has been transferred before attempting to access + runner.assertTransferCount(GetSNMP.REL_SUCCESS, 1); final MockFlowFile successFF = runner.getFlowFilesForRelationship(GetSNMP.REL_SUCCESS).get(0); assertNotNull(successFF); assertTrue(successFF.getAttributes().get(SNMPUtils.SNMP_PROP_PREFIX + sysDescr.toString() + SNMPUtils.SNMP_PROP_DELIMITER + "4").startsWith("SNMP4J-Agent")); From fb99a21e10528c2b7ec353d501edd33386097ba8 Mon Sep 17 00:00:00 2001 From: Aldrin Piri Date: Thu, 14 Jul 2016 11:33:50 -0400 Subject: [PATCH 11/12] Removing the deprecation on FlowFilePrioritizer and migrating to nifi-framework-api. --- nifi-api/src/main/java/org/apache/nifi/flowfile/FlowFile.java | 2 +- .../main/java/org/apache/nifi/flowfile/FlowFilePrioritizer.java | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) rename {nifi-api => nifi-framework-api}/src/main/java/org/apache/nifi/flowfile/FlowFilePrioritizer.java (99%) diff --git a/nifi-api/src/main/java/org/apache/nifi/flowfile/FlowFile.java b/nifi-api/src/main/java/org/apache/nifi/flowfile/FlowFile.java index 0f4d2d015d33..7d0e27ebb68c 100644 --- a/nifi-api/src/main/java/org/apache/nifi/flowfile/FlowFile.java +++ b/nifi-api/src/main/java/org/apache/nifi/flowfile/FlowFile.java @@ -68,7 +68,7 @@ public interface FlowFile extends Comparable { * @return the time at which the FlowFile was most recently added to a * FlowFile queue, or {@code null} if the FlowFile has never been enqueued. * This value will always be populated before it is passed to a - * {@link FlowFilePrioritizer} + * FlowFilePrioritizer */ Long getLastQueueDate(); diff --git a/nifi-api/src/main/java/org/apache/nifi/flowfile/FlowFilePrioritizer.java b/nifi-framework-api/src/main/java/org/apache/nifi/flowfile/FlowFilePrioritizer.java similarity index 99% rename from nifi-api/src/main/java/org/apache/nifi/flowfile/FlowFilePrioritizer.java rename to nifi-framework-api/src/main/java/org/apache/nifi/flowfile/FlowFilePrioritizer.java index 5ee730d4ccfd..684f454f5709 100644 --- a/nifi-api/src/main/java/org/apache/nifi/flowfile/FlowFilePrioritizer.java +++ b/nifi-framework-api/src/main/java/org/apache/nifi/flowfile/FlowFilePrioritizer.java @@ -25,6 +25,5 @@ * extracted to be used as an attribute of the flow file. * */ -@Deprecated public interface FlowFilePrioritizer extends Comparator { } From cf50529ff75406a89ba3fa2e1bf3d35fd2921f1c Mon Sep 17 00:00:00 2001 From: Aldrin Piri Date: Thu, 14 Jul 2016 12:06:10 -0400 Subject: [PATCH 12/12] Removing unused interface. --- .../provenance/ProvenanceQueryableIndex.java | 108 ------------------ .../nifi/provenance/ProvenanceRepository.java | 4 +- .../org/apache/nifi/nar/ExtensionManager.java | 1 - .../nifi/nar/NarThreadContextClassLoader.java | 1 - .../nifi/web/controller/ControllerFacade.java | 1 - 5 files changed, 2 insertions(+), 113 deletions(-) delete mode 100644 nifi-framework-api/src/main/java/org/apache/nifi/provenance/ProvenanceQueryableIndex.java diff --git a/nifi-framework-api/src/main/java/org/apache/nifi/provenance/ProvenanceQueryableIndex.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/ProvenanceQueryableIndex.java deleted file mode 100644 index e0ff44c159dd..000000000000 --- a/nifi-framework-api/src/main/java/org/apache/nifi/provenance/ProvenanceQueryableIndex.java +++ /dev/null @@ -1,108 +0,0 @@ -package org.apache.nifi.provenance; - -import org.apache.nifi.authorization.user.NiFiUser; -import org.apache.nifi.provenance.lineage.ComputeLineageSubmission; -import org.apache.nifi.provenance.search.Query; -import org.apache.nifi.provenance.search.QuerySubmission; -import org.apache.nifi.provenance.search.SearchableField; - -import java.util.List; - -/** - * Created by apiri on 11Jul2016. - */ -public interface ProvenanceQueryableIndex { - /** - * Submits an asynchronous request to process the given query, returning an - * identifier that can be used to fetch the results at a later time - * - * @param query to submit - * @param user the NiFi User to authorize the events against - * - * @return an identifier that can be used to fetch the results at a later - * time - */ - QuerySubmission submitQuery(Query query, NiFiUser user); - - /** - * @param queryIdentifier of the query - * @param user the user who is retrieving the query - * - * @return the QueryResult associated with the given identifier, if the - * query has finished processing. If the query has not yet finished running, - * returns null - */ - QuerySubmission retrieveQuerySubmission(String queryIdentifier, NiFiUser user); - - /** - * Submits a Lineage Computation to be completed and returns the - * AsynchronousLineageResult that indicates the status of the request and - * the results, if the computation is complete. If the given user does not - * have authorization to view one of the events in the lineage, a placeholder - * event will be used instead that provides none of the event details except - * for the identifier of the component that emitted the Provenance Event. It is - * necessary to include this node in the lineage view so that the lineage makes - * sense, rather than showing disconnected graphs when the user is not authorized - * for all components' provenance events. - * - * @param flowFileUuid the UUID of the FlowFile for which the Lineage should - * be calculated - * @param user the NiFi User to authorize events against - * - * @return a {@link ComputeLineageSubmission} object that can be used to - * check if the computing is complete and if so get the results - */ - ComputeLineageSubmission submitLineageComputation(String flowFileUuid, NiFiUser user); - - /** - * @param lineageIdentifier identifier of lineage to compute - * @param user the user who is retrieving the lineage submission - * - * @return the {@link ComputeLineageSubmission} associated with the given - * identifier - */ - ComputeLineageSubmission retrieveLineageSubmission(String lineageIdentifier, NiFiUser user); - - /** - * Submits a request to expand the parents of the event with the given id. If the given user - * is not authorized to access any event, a placeholder will be used instead that contains only - * the ID of the component that emitted the event. - * - * @param eventId the one-up id of the Event to expand - * @param user the NiFi user to authorize events against - * @return a submission which can be checked for status - * - * @throws IllegalArgumentException if the given identifier identifies a - * Provenance Event that has a Type that is not expandable or if the - * identifier cannot be found - */ - ComputeLineageSubmission submitExpandParents(long eventId, NiFiUser user); - - /** - * Submits a request to expand the children of the event with the given id. If the given user - * is not authorized to access any event, a placeholder will be used instead that contains only - * the ID of the component that emitted the event. - * - * @param eventId the one-up id of the Event - * @param user the NiFi user to authorize events against - * - * @return a submission which can be checked for status - * - * @throws IllegalArgumentException if the given identifier identifies a - * Provenance Event that has a Type that is not expandable or if the - * identifier cannot be found - */ - ComputeLineageSubmission submitExpandChildren(long eventId, NiFiUser user); - - /** - * @return a list of all fields that can be searched via the - * {@link ProvenanceQueryableIndex#submitQuery(Query, NiFiUser)} method - */ - List getSearchableFields(); - - /** - * @return a list of all FlowFile attributes that can be searched via the - * {@link ProvenanceQueryableIndex#submitQuery(Query, NiFiUser)} method - */ - List getSearchableAttributes(); -} diff --git a/nifi-framework-api/src/main/java/org/apache/nifi/provenance/ProvenanceRepository.java b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/ProvenanceRepository.java index 40cffbc8dae6..7ac1a65e80aa 100644 --- a/nifi-framework-api/src/main/java/org/apache/nifi/provenance/ProvenanceRepository.java +++ b/nifi-framework-api/src/main/java/org/apache/nifi/provenance/ProvenanceRepository.java @@ -148,13 +148,13 @@ public interface ProvenanceRepository extends ProvenanceEventRepository { /** * @return a list of all fields that can be searched via the - * {@link ProvenanceQueryableIndex#submitQuery(Query, NiFiUser)} method + * {@link ProvenanceRepository#submitQuery(Query, NiFiUser)} method */ List getSearchableFields(); /** * @return a list of all FlowFile attributes that can be searched via the - * {@link ProvenanceQueryableIndex#submitQuery(Query, NiFiUser)} method + * {@link ProvenanceRepository#submitQuery(Query, NiFiUser)} method */ List getSearchableAttributes(); } diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/ExtensionManager.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/ExtensionManager.java index 9a32aa135782..9355bbc69472 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/ExtensionManager.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/ExtensionManager.java @@ -25,7 +25,6 @@ import org.apache.nifi.controller.status.history.ComponentStatusRepository; import org.apache.nifi.flowfile.FlowFilePrioritizer; import org.apache.nifi.processor.Processor; -import org.apache.nifi.provenance.ProvenanceEventRepository; import org.apache.nifi.provenance.ProvenanceRepository; import org.apache.nifi.reporting.ReportingTask; import org.slf4j.Logger; diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarThreadContextClassLoader.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarThreadContextClassLoader.java index 70e0b08ef1c4..381b54b46db7 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarThreadContextClassLoader.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils/src/main/java/org/apache/nifi/nar/NarThreadContextClassLoader.java @@ -29,7 +29,6 @@ import org.apache.nifi.processor.io.InputStreamCallback; import org.apache.nifi.processor.io.OutputStreamCallback; import org.apache.nifi.processor.io.StreamCallback; -import org.apache.nifi.provenance.ProvenanceEventRepository; import org.apache.nifi.provenance.ProvenanceRepository; import org.apache.nifi.reporting.ReportingTask; diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/controller/ControllerFacade.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/controller/ControllerFacade.java index 38e4d399973f..9f19968e5a2a 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/controller/ControllerFacade.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/controller/ControllerFacade.java @@ -71,7 +71,6 @@ import org.apache.nifi.processor.Relationship; import org.apache.nifi.provenance.ProvenanceRepository; import org.apache.nifi.provenance.ProvenanceEventRecord; -import org.apache.nifi.provenance.ProvenanceEventRepository; import org.apache.nifi.provenance.SearchableFields; import org.apache.nifi.provenance.lineage.ComputeLineageSubmission; import org.apache.nifi.provenance.search.Query;