From f6d9354bfb08a2351aca0b5f2356b766f7e5550e Mon Sep 17 00:00:00 2001 From: joewitt Date: Wed, 21 Jan 2015 01:47:48 -0500 Subject: [PATCH] NIFI-270 Made all changes identified by adam, mark, joey to prep for a cleaner build --- README.md | 2 +- .../DISCLAIMER | 0 .../LICENSE | 0 .../NOTICE | 0 .../README.md | 0 .../pom.xml | 5 +- .../main/java/org/apache}/nifi/NarMojo.java | 2 +- .../resources/META-INF/plexus/components.xml | 2 +- nifi/README.md | 2 +- .../kafka-bundle/kafka-processors/pom.xml | 76 - nifi/nar-bundles/kafka-bundle/pom.xml | 35 - .../monitor-threshold-bundle/nar/pom.xml | 39 - .../processor/pom.xml | 45 - .../processors/monitor/MonitorThreshold.java | 904 ---------- .../processors/monitor/ThresholdsParser.java | 134 -- .../org.apache.nifi.processor.Processor | 15 - .../index.html | 485 ----- .../monitor/TestMonitorThreshold.java | 1560 ----------------- .../processor/src/test/resources/testFile | 23 - .../resources/threshold_settings_allow_0.xml | 21 - .../resources/threshold_settings_allow_1.xml | 21 - .../threshold_settings_allow_10_KB.xml | 21 - ...hreshold_settings_allow_10_KB_and_2_KB.xml | 26 - .../threshold_settings_allow_1669_bytes.xml | 21 - .../resources/threshold_settings_allow_2.xml | 21 - .../threshold_settings_allow_2_default.xml | 21 - ...hold_settings_allow_3336_bytes_default.xml | 21 - ...ld_settings_with_empty_attribute_value.xml | 21 - ...tings_with_spaces_for_attribute_values.xml | 22 - .../monitor-threshold-bundle/ui/pom.xml | 134 -- .../thresholds/ui/AttributeComparator.java | 36 - .../thresholds/ui/AttributeResource.java | 242 --- .../monitor/thresholds/ui/RuleComparator.java | 46 - .../thresholds/ui/ThresholdResource.java | 227 --- .../ui/ThresholdSettingsResource.java | 191 -- .../thresholds/ui/ThresholdsConfigFile.java | 296 ---- .../src/main/webapp/META-INF/nifi-processor | 15 - .../WEB-INF/jsp/attribute-add-dialog.jsp | 43 - .../WEB-INF/jsp/attribute-confirm-dialog.jsp | 21 - .../WEB-INF/jsp/attribute-edit-dialog.jsp | 27 - .../WEB-INF/jsp/attribute-filter-dialog.jsp | 26 - .../main/webapp/WEB-INF/jsp/error-dialog.jsp | 21 - .../ui/src/main/webapp/WEB-INF/jsp/index.jsp | 101 -- .../WEB-INF/jsp/threshold-add-dialog.jsp | 45 - .../WEB-INF/jsp/threshold-confirm-dialog.jsp | 21 - .../webapp/WEB-INF/jsp/threshold-dialog.jsp | 48 - .../WEB-INF/jsp/threshold-edit-dialog.jsp | 45 - .../WEB-INF/jsp/threshold-filter-dialog.jsp | 40 - .../ui/src/main/webapp/WEB-INF/web.xml | 48 - .../src/main/webapp/css/threshold_styles.css | 422 ----- .../main/webapp/images/addWorksheetRow.png | Bin 323 -> 0 bytes .../ui/src/main/webapp/images/clear.png | Bin 912 -> 0 bytes .../ui/src/main/webapp/images/filter.gif | Bin 623 -> 0 bytes .../ui/src/main/webapp/images/firstPage.gif | Bin 577 -> 0 bytes .../main/webapp/images/firstPageDisabled.gif | Bin 365 -> 0 bytes .../ui/src/main/webapp/images/lastPage.gif | Bin 579 -> 0 bytes .../main/webapp/images/lastPageDisabled.gif | Bin 368 -> 0 bytes .../ui/src/main/webapp/images/nextPage.gif | Bin 570 -> 0 bytes .../main/webapp/images/nextPageDisabled.gif | Bin 362 -> 0 bytes .../ui/src/main/webapp/images/prevPage.gif | Bin 567 -> 0 bytes .../main/webapp/images/prevPageDisabled.gif | Bin 361 -> 0 bytes .../main/webapp/images/removeWorksheetRow.png | Bin 655 -> 0 bytes .../ui/src/main/webapp/images/separator.gif | Bin 63 -> 0 bytes .../webapp/js/jquery/jqgrid/css/ui.jqgrid.css | 171 -- .../jquery/jqgrid/js/i18n/grid.locale-en.js | 170 -- .../js/jquery/jqgrid/js/jquery.jqGrid.min.js | 545 ------ .../ui/src/main/webapp/js/nf-common.js | 888 ---------- .../ui/src/main/xsd/threshold_settings.xsd | 54 - .../pom.xml | 42 - .../org.apache.nifi.processor.Processor | 17 - .../standard-ganglia-reporter/pom.xml | 52 - .../org.apache.nifi.reporting.ReportingTask | 15 - .../ui/nb-configuration.xml | 18 - .../nar/pom.xml | 36 - .../pom.xml | 44 - nifi/nifi-api/pom.xml | 9 +- nifi/{assembly => nifi-assembly}/pom.xml | 33 +- .../src/main/assembly/dependencies.xml | 2 +- nifi/nifi-bootstrap/pom.xml | 7 +- .../nifi-data-provenance-utils}/.gitignore | 0 .../nifi-data-provenance-utils}/pom.xml | 9 +- .../provenance/AsyncLineageSubmission.java | 0 .../nifi/provenance/AsyncQuerySubmission.java | 0 .../nifi/provenance/NamedSearchableField.java | 0 .../provenance/SearchableFieldParser.java | 0 .../nifi/provenance/SearchableFields.java | 0 .../provenance/StandardLineageResult.java | 0 .../StandardProvenanceEventRecord.java | 0 .../nifi/provenance/StandardQueryResult.java | 0 .../nifi/provenance/lineage/EdgeNode.java | 0 .../nifi/provenance/lineage/EventNode.java | 0 .../provenance/lineage/FlowFileLineage.java | 0 .../nifi/provenance/lineage/FlowFileNode.java | 0 .../nifi-expression-language/pom.xml | 8 +- .../language/antlr/AttributeExpressionLexer.g | 0 .../antlr/AttributeExpressionParser.g | 0 .../output/AttributeExpressionLexer.tokens | 0 .../language/EmptyPreparedQuery.java | 0 .../language/InvalidPreparedQuery.java | 0 .../expression/language/PreparedQuery.java | 0 .../attribute/expression/language/Query.java | 0 .../language/StandardAttributeExpression.java | 0 .../StandardExpressionLanguageCompiler.java | 0 .../language/StandardPreparedQuery.java | 0 .../language/evaluation/BooleanEvaluator.java | 0 .../evaluation/BooleanQueryResult.java | 0 .../language/evaluation/DateEvaluator.java | 0 .../language/evaluation/DateQueryResult.java | 0 .../language/evaluation/Evaluator.java | 0 .../language/evaluation/NumberEvaluator.java | 0 .../evaluation/NumberQueryResult.java | 0 .../language/evaluation/QueryResult.java | 0 .../language/evaluation/StringEvaluator.java | 0 .../evaluation/StringQueryResult.java | 0 .../evaluation/cast/BooleanCastEvaluator.java | 0 .../evaluation/cast/DateCastEvaluator.java | 0 .../evaluation/cast/NumberCastEvaluator.java | 0 .../evaluation/cast/StringCastEvaluator.java | 0 .../evaluation/functions/AndEvaluator.java | 0 .../evaluation/functions/AppendEvaluator.java | 0 .../functions/AttributeEvaluator.java | 0 .../functions/ContainsEvaluator.java | 0 .../functions/DateToNumberEvaluator.java | 0 .../evaluation/functions/DivideEvaluator.java | 0 .../functions/EndsWithEvaluator.java | 0 .../evaluation/functions/EqualsEvaluator.java | 0 .../functions/EqualsIgnoreCaseEvaluator.java | 0 .../evaluation/functions/FindEvaluator.java | 0 .../evaluation/functions/FormatEvaluator.java | 0 .../functions/GreaterThanEvaluator.java | 0 .../GreaterThanOrEqualEvaluator.java | 0 .../functions/HostnameEvaluator.java | 0 .../evaluation/functions/IPEvaluator.java | 0 .../functions/IndexOfEvaluator.java | 0 .../functions/IsEmptyEvaluator.java | 0 .../evaluation/functions/IsNullEvaluator.java | 0 .../functions/LastIndexOfEvaluator.java | 0 .../evaluation/functions/LengthEvaluator.java | 0 .../functions/LessThanEvaluator.java | 0 .../functions/LessThanOrEqualEvaluator.java | 0 .../functions/MatchesEvaluator.java | 0 .../evaluation/functions/MinusEvaluator.java | 0 .../evaluation/functions/ModEvaluator.java | 0 .../functions/MultiplyEvaluator.java | 0 .../evaluation/functions/NotEvaluator.java | 0 .../functions/NotNullEvaluator.java | 0 .../evaluation/functions/NowEvaluator.java | 0 .../functions/NumberToDateEvaluator.java | 0 .../functions/OneUpSequenceEvaluator.java | 0 .../evaluation/functions/OrEvaluator.java | 0 .../evaluation/functions/PlusEvaluator.java | 0 .../functions/PrependEvaluator.java | 0 .../functions/ReplaceAllEvaluator.java | 0 .../functions/ReplaceEmptyEvaluator.java | 0 .../functions/ReplaceEvaluator.java | 0 .../functions/ReplaceNullEvaluator.java | 0 .../functions/StartsWithEvaluator.java | 0 .../functions/StringToDateEvaluator.java | 0 .../functions/SubstringAfterEvaluator.java | 0 .../SubstringAfterLastEvaluator.java | 0 .../functions/SubstringBeforeEvaluator.java | 0 .../SubstringBeforeLastEvaluator.java | 0 .../functions/SubstringEvaluator.java | 0 .../functions/ToLowerEvaluator.java | 0 .../functions/ToNumberEvaluator.java | 0 .../functions/ToRadixEvaluator.java | 0 .../functions/ToStringEvaluator.java | 0 .../functions/ToUpperEvaluator.java | 0 .../evaluation/functions/TrimEvaluator.java | 0 .../functions/UrlDecodeEvaluator.java | 0 .../functions/UrlEncodeEvaluator.java | 0 .../evaluation/functions/UuidEvaluator.java | 0 .../literals/BooleanLiteralEvaluator.java | 0 .../literals/NumberLiteralEvaluator.java | 0 .../literals/StringLiteralEvaluator.java | 0 .../evaluation/reduce/CountEvaluator.java | 0 .../evaluation/reduce/JoinEvaluator.java | 0 .../evaluation/reduce/ReduceEvaluator.java | 0 .../selection/AllAttributesEvaluator.java | 0 .../selection/AnyAttributeEvaluator.java | 0 .../AnyMatchingAttributeEvaluator.java | 0 .../DelineatedAttributeEvaluator.java | 0 .../selection/MappingEvaluator.java | 0 .../selection/MultiAttributeEvaluator.java | 0 .../MultiMatchAttributeEvaluator.java | 0 .../MultiNamedAttributeEvaluator.java | 0 .../AttributeExpressionLanguageException.java | 0 ...uteExpressionLanguageParsingException.java | 0 .../exception/IllegalAttributeException.java | 0 .../expression/language/TestQuery.java | 0 .../language/TestStandardPreparedQuery.java | 0 .../nifi-flowfile-packager}/pom.xml | 10 +- .../apache/nifi/util/FlowFilePackager.java | 0 .../apache/nifi/util/FlowFilePackagerV1.java | 0 .../apache/nifi/util/FlowFilePackagerV2.java | 0 .../apache/nifi/util/FlowFilePackagerV3.java | 0 .../apache/nifi/util/FlowFileUnpackager.java | 0 .../nifi/util/FlowFileUnpackagerV1.java | 0 .../nifi/util/FlowFileUnpackagerV2.java | 0 .../nifi/util/FlowFileUnpackagerV3.java | 0 .../java/org/apache/nifi/util/Unpackage.java | 0 .../nifi/util/TestPackageUnpackageV3.java | 0 .../nifi-logging-utils/pom.xml | 6 +- .../java/org/apache/nifi/logging/NiFiLog.java | 0 .../nifi-processor-utilities}/pom.xml | 6 +- .../nifi/processor/util/FlowFileFilters.java | 0 .../nifi/processor/util/SSLProperties.java | 0 .../processor/util/StandardValidators.java | 0 .../nifi/processor/TestFormatUtils.java | 0 .../util/TestStandardValidators.java | 0 .../nifi-properties/.gitignore | 0 .../nifi-properties/pom.xml | 6 +- .../org/apache/nifi/util/NiFiProperties.java | 0 .../org/apache/nifi/util/StringUtils.java | 0 .../nifi-security-utils/pom.xml | 6 +- .../nifi/security/util/CertificateUtils.java | 0 .../nifi/security/util/EncryptionMethod.java | 0 .../nifi/security/util/KeystoreType.java | 0 .../security/util/SecurityStoreTypes.java | 0 .../nifi/security/util/SslContextFactory.java | 0 .../nifi-socket-utils/pom.xml | 6 +- .../nifi/io/nio/AbstractChannelReader.java | 0 .../org/apache/nifi/io/nio/BufferPool.java | 0 .../apache/nifi/io/nio/ChannelDispatcher.java | 0 .../apache/nifi/io/nio/ChannelListener.java | 0 .../nifi/io/nio/DatagramChannelReader.java | 0 .../nifi/io/nio/SocketChannelReader.java | 0 .../nio/consumer/AbstractStreamConsumer.java | 0 .../nifi/io/nio/consumer/StreamConsumer.java | 0 .../nio/consumer/StreamConsumerFactory.java | 0 .../nifi/io/socket/SSLContextFactory.java | 0 .../io/socket/ServerSocketConfiguration.java | 0 .../nifi/io/socket/SocketConfiguration.java | 0 .../apache/nifi/io/socket/SocketListener.java | 0 .../apache/nifi/io/socket/SocketUtils.java | 0 .../socket/multicast/DiscoverableService.java | 0 .../multicast/DiscoverableServiceImpl.java | 0 .../multicast/MulticastConfiguration.java | 0 .../socket/multicast/MulticastListener.java | 0 .../multicast/MulticastServiceDiscovery.java | 0 .../MulticastServicesBroadcaster.java | 0 .../socket/multicast/MulticastTimeToLive.java | 0 .../io/socket/multicast/MulticastUtils.java | 0 .../io/socket/multicast/ServiceDiscovery.java | 0 .../socket/multicast/ServicesBroadcaster.java | 0 .../nifi/io/nio/example/ServerMain.java | 0 .../apache/nifi/io/nio/example/TCPClient.java | 0 .../apache/nifi/io/nio/example/UDPClient.java | 0 .../io/nio/example/UselessStreamConsumer.java | 0 .../src/test/resources/log4j.xml | 0 .../nifi-utils/.gitignore | 0 .../nifi-utils/pom.xml | 5 +- .../flowfile/attributes/CoreAttributes.java | 0 .../attributes/FlowFileAttributeKey.java | 0 .../remote/StandardVersionNegotiator.java | 0 .../apache/nifi/remote/VersionNegotiator.java | 0 .../TransmissionDisabledException.java | 0 .../remote/io/CompressionInputStream.java | 0 .../remote/io/CompressionOutputStream.java | 0 .../remote/io/InterruptableInputStream.java | 0 .../remote/io/InterruptableOutputStream.java | 0 .../remote/io/socket/BufferStateManager.java | 0 .../io/socket/SocketChannelInputStream.java | 0 .../io/socket/SocketChannelOutputStream.java | 0 .../io/socket/ssl/SSLSocketChannel.java | 0 .../ssl/SSLSocketChannelInputStream.java | 0 .../ssl/SSLSocketChannelOutputStream.java | 0 .../nifi/stream/io/BufferedInputStream.java | 0 .../nifi/stream/io/BufferedOutputStream.java | 0 .../nifi/stream/io/ByteArrayInputStream.java | 0 .../nifi/stream/io/ByteArrayOutputStream.java | 0 .../stream/io/ByteCountingInputStream.java | 0 .../stream/io/ByteCountingOutputStream.java | 0 .../nifi/stream/io/DataOutputStream.java | 0 .../nifi/stream/io/GZIPOutputStream.java | 0 .../stream/io/LeakyBucketStreamThrottler.java | 0 .../stream/io/NonCloseableInputStream.java | 0 .../stream/io/NonCloseableOutputStream.java | 0 .../nifi/stream/io/NullOutputStream.java | 0 .../nifi/stream/io/StreamThrottler.java | 0 .../apache/nifi/stream/io/StreamUtils.java | 0 .../nifi/stream/io/ZipOutputStream.java | 0 .../BytePatternNotFoundException.java | 0 .../io/util/NonThreadSafeCircularBuffer.java | 0 .../org/apache/nifi/util/BooleanHolder.java | 0 .../org/apache/nifi/util/FormatUtils.java | 0 .../org/apache/nifi/util/IntegerHolder.java | 0 .../java/org/apache/nifi/util/LongHolder.java | 0 .../nifi/util/NaiveSearchRingBuffer.java | 0 .../org/apache/nifi/util/ObjectHolder.java | 0 .../java/org/apache/nifi/util/RingBuffer.java | 0 .../java/org/apache/nifi/util/StopWatch.java | 0 .../main/java/org/apache/nifi/util/Tuple.java | 0 .../concurrency/DebugDisabledTimedLock.java | 0 .../concurrency/DebugEnabledTimedLock.java | 0 .../util/concurrency/DebuggableTimedLock.java | 0 .../nifi/util/concurrency/TimedLock.java | 0 .../org/apache/nifi/util/file/FileUtils.java | 0 .../file/monitor/CompoundUpdateMonitor.java | 0 .../file/monitor/LastModifiedMonitor.java | 0 .../nifi/util/file/monitor/MD5SumMonitor.java | 0 .../file/monitor/SynchronousFileWatcher.java | 0 .../nifi/util/file/monitor/UpdateMonitor.java | 0 .../org/apache/nifi/util/search/Search.java | 0 .../apache/nifi/util/search/SearchTerm.java | 0 .../util/search/ahocorasick/AhoCorasick.java | 0 .../nifi/util/search/ahocorasick/Node.java | 0 .../util/search/ahocorasick/SearchState.java | 0 .../nifi/util/timebuffer/EntityAccess.java | 0 .../util/timebuffer/LongEntityAccess.java | 0 .../nifi/util/timebuffer/TimedBuffer.java | 0 .../nifi/util/timebuffer/TimestampedLong.java | 0 .../io/TestCompressionInputOutputStreams.java | 0 .../stream/io/TestLeakyBucketThrottler.java | 0 .../nifi/util/TestNaiveSearchRingBuffer.java | 0 .../monitor/TestCompoundUpdateMonitor.java | 0 .../monitor/TestSynchronousFileWatcher.java | 0 .../nifi/util/timebuffer/TestRingBuffer.java | 0 .../nifi/util/timebuffer/TestTimedBuffer.java | 0 .../src/test/resources/logback-test.xml | 0 .../nifi-web-utils/pom.xml | 6 +- .../org/apache/nifi/web/util/ClientUtils.java | 0 .../nifi/web/util/ObjectMapperResolver.java | 0 .../org/apache/nifi/web/util/WebUtils.java | 0 .../nifi-write-ahead-log}/.gitignore | 0 .../nifi-write-ahead-log}/pom.xml | 9 +- .../org/wali/MinimalLockingWriteAheadLog.java | 0 .../src/main/java/org/wali/SerDe.java | 0 .../src/main/java/org/wali/SyncListener.java | 0 .../src/main/java/org/wali/UpdateType.java | 0 .../java/org/wali/WriteAheadRepository.java | 0 .../src/test/java/org/wali/DummyRecord.java | 0 .../test/java/org/wali/DummyRecordSerde.java | 0 .../wali/TestMinimalLockingWriteAheadLog.java | 0 nifi/{commons => nifi-commons}/pom.xml | 16 +- nifi/nifi-docs/pom.xml | 7 +- nifi/nifi-mock/pom.xml | 8 +- .../nifi-framework-nar}/.gitignore | 0 .../nifi-framework-nar}/pom.xml | 9 +- .../nifi-administration}/.gitignore | 0 .../nifi-administration}/pom.xml | 8 +- .../admin/AuditDataSourceFactoryBean.java | 0 .../apache/nifi/admin/RepositoryUtils.java | 0 .../nifi/admin/UserDataSourceFactoryBean.java | 0 .../org/apache/nifi/admin/dao/ActionDAO.java | 0 .../apache/nifi/admin/dao/AuthorityDAO.java | 0 .../org/apache/nifi/admin/dao/DAOFactory.java | 0 .../nifi/admin/dao/DataAccessException.java | 0 .../org/apache/nifi/admin/dao/UserDAO.java | 0 .../nifi/admin/dao/impl/DAOFactoryImpl.java | 0 .../admin/dao/impl/StandardActionDAO.java | 0 .../admin/dao/impl/StandardAuthorityDAO.java | 0 .../nifi/admin/dao/impl/StandardUserDAO.java | 0 .../service/AccountDisabledException.java | 0 .../service/AccountNotFoundException.java | 0 .../service/AccountPendingException.java | 0 .../service/AdministrationException.java | 0 .../nifi/admin/service/AuditService.java | 0 .../nifi/admin/service/UserService.java | 0 .../service/action/AbstractUserAction.java | 0 .../service/action/AddActionsAction.java | 0 .../service/action/AdministrationAction.java | 0 .../action/AuthorizeDownloadAction.java | 0 .../service/action/AuthorizeUserAction.java | 0 .../service/action/CreateUserAction.java | 0 .../service/action/DeleteUserAction.java | 0 .../service/action/DisableUserAction.java | 0 .../action/DisableUserGroupAction.java | 0 .../service/action/FindUserByDnAction.java | 0 .../service/action/FindUserByIdAction.java | 0 .../admin/service/action/GetActionAction.java | 0 .../service/action/GetActionsAction.java | 0 .../service/action/GetPreviousValues.java | 0 .../service/action/GetUserGroupAction.java | 0 .../admin/service/action/GetUsersAction.java | 0 .../action/HasPendingUserAccounts.java | 0 .../action/InvalidateUserAccountAction.java | 0 .../InvalidateUserGroupAccountsAction.java | 0 .../service/action/PurgeActionsAction.java | 0 .../action/RequestUserAccountAction.java | 0 .../action/SeedUserAccountsAction.java | 0 .../service/action/UngroupUserAction.java | 0 .../action/UngroupUserGroupAction.java | 0 .../service/action/UpdateUserAction.java | 0 .../UpdateUserAuthoritiesCacheAction.java | 0 .../service/action/UpdateUserCacheAction.java | 0 .../service/action/UpdateUserGroupAction.java | 0 .../service/impl/StandardAuditService.java | 0 .../service/impl/StandardUserService.java | 0 .../service/transaction/Transaction.java | 0 .../transaction/TransactionBuilder.java | 0 .../transaction/TransactionException.java | 0 .../transaction/impl/StandardTransaction.java | 0 .../impl/StandardTransactionBuilder.java | 0 .../AuthorityProviderFactoryBean.java | 0 ...AuthorityProviderConfigurationContext.java | 0 ...uthorityProviderInitializationContext.java | 0 .../java/org/apache/nifi/history/History.java | 0 .../org/apache/nifi/history/HistoryQuery.java | 0 .../apache/nifi/history/PreviousValue.java | 0 .../org/apache/nifi/user/AccountStatus.java | 0 .../java/org/apache/nifi/user/NiFiUser.java | 0 .../org/apache/nifi/user/NiFiUserGroup.java | 0 .../resources/nifi-administration-context.xml | 0 .../src/main/xsd/authority-providers.xsd | 0 .../action/AuthorizeUserActionTest.java | 0 .../service/action/CreateUserActionTest.java | 0 .../service/action/DisableUserActionTest.java | 0 .../InvalidateUserAccountActionTest.java | 0 .../action/RequestUserAccountActionTest.java | 0 .../action/SeedUserAccountsActionTest.java | 0 .../action/SetUserAuthoritiesActionTest.java | 0 .../nifi-client-dto}/.gitignore | 0 .../nifi-framework/nifi-client-dto}/pom.xml | 6 +- .../org/apache/nifi/web/api/dto/AboutDTO.java | 0 .../apache/nifi/web/api/dto/BannerDTO.java | 0 .../nifi/web/api/dto/BulletinBoardDTO.java | 0 .../apache/nifi/web/api/dto/BulletinDTO.java | 0 .../nifi/web/api/dto/BulletinQueryDTO.java | 0 .../apache/nifi/web/api/dto/ClusterDTO.java | 0 .../nifi/web/api/dto/ConnectableDTO.java | 0 .../nifi/web/api/dto/ConnectionDTO.java | 0 .../api/dto/ControllerConfigurationDTO.java | 0 .../nifi/web/api/dto/ControllerDTO.java | 0 .../apache/nifi/web/api/dto/CounterDTO.java | 0 .../apache/nifi/web/api/dto/CountersDTO.java | 0 .../nifi/web/api/dto/DocumentedTypeDTO.java | 0 .../nifi/web/api/dto/FlowSnippetDTO.java | 0 .../apache/nifi/web/api/dto/FunnelDTO.java | 0 .../org/apache/nifi/web/api/dto/LabelDTO.java | 0 .../nifi/web/api/dto/NiFiComponentDTO.java | 0 .../org/apache/nifi/web/api/dto/NodeDTO.java | 0 .../apache/nifi/web/api/dto/NodeEventDTO.java | 0 .../web/api/dto/NodeSystemDiagnosticsDTO.java | 0 .../org/apache/nifi/web/api/dto/PortDTO.java | 0 .../apache/nifi/web/api/dto/PositionDTO.java | 0 .../nifi/web/api/dto/PreviousValueDTO.java | 0 .../nifi/web/api/dto/ProcessGroupDTO.java | 0 .../nifi/web/api/dto/ProcessorConfigDTO.java | 0 .../apache/nifi/web/api/dto/ProcessorDTO.java | 0 .../nifi/web/api/dto/ProcessorHistoryDTO.java | 0 .../nifi/web/api/dto/PropertyHistoryDTO.java | 0 .../nifi/web/api/dto/RelationshipDTO.java | 0 .../dto/RemoteProcessGroupContentsDTO.java | 0 .../web/api/dto/RemoteProcessGroupDTO.java | 0 .../api/dto/RemoteProcessGroupPortDTO.java | 0 .../apache/nifi/web/api/dto/RevisionDTO.java | 0 .../apache/nifi/web/api/dto/SnippetDTO.java | 0 .../web/api/dto/SystemDiagnosticsDTO.java | 0 .../apache/nifi/web/api/dto/TemplateDTO.java | 0 .../org/apache/nifi/web/api/dto/UserDTO.java | 0 .../apache/nifi/web/api/dto/UserGroupDTO.java | 0 .../nifi/web/api/dto/action/ActionDTO.java | 0 .../nifi/web/api/dto/action/HistoryDTO.java | 0 .../web/api/dto/action/HistoryQueryDTO.java | 0 .../details/ComponentDetailsDTO.java | 0 .../details/ProcessorDetailsDTO.java | 0 .../details/RemoteProcessGroupDetailsDTO.java | 0 .../dto/action/details/ActionDetailsDTO.java | 0 .../action/details/ConfigureDetailsDTO.java | 0 .../dto/action/details/ConnectDetailsDTO.java | 0 .../dto/action/details/MoveDetailsDTO.java | 0 .../dto/action/details/PurgeDetailsDTO.java | 0 .../web/api/dto/provenance/AttributeDTO.java | 0 .../web/api/dto/provenance/ProvenanceDTO.java | 0 .../dto/provenance/ProvenanceEventDTO.java | 0 .../dto/provenance/ProvenanceOptionsDTO.java | 0 .../dto/provenance/ProvenanceRequestDTO.java | 0 .../dto/provenance/ProvenanceResultsDTO.java | 0 .../ProvenanceSearchableFieldDTO.java | 0 .../dto/provenance/lineage/LineageDTO.java | 0 .../provenance/lineage/LineageRequestDTO.java | 0 .../provenance/lineage/LineageResultsDTO.java | 0 .../provenance/lineage/ProvenanceLinkDTO.java | 0 .../provenance/lineage/ProvenanceNodeDTO.java | 0 .../dto/search/ComponentSearchResultDTO.java | 0 .../api/dto/search/NodeSearchResultDTO.java | 0 .../web/api/dto/search/SearchResultsDTO.java | 0 .../dto/search/UserGroupSearchResultDTO.java | 0 .../api/dto/search/UserSearchResultDTO.java | 0 .../status/ClusterConnectionStatusDTO.java | 0 .../api/dto/status/ClusterPortStatusDTO.java | 0 .../dto/status/ClusterProcessorStatusDTO.java | 0 .../ClusterRemoteProcessGroupStatusDTO.java | 0 .../web/api/dto/status/ClusterStatusDTO.java | 0 .../dto/status/ClusterStatusHistoryDTO.java | 0 .../api/dto/status/ConnectionStatusDTO.java | 0 .../api/dto/status/ControllerStatusDTO.java | 0 .../dto/status/NodeConnectionStatusDTO.java | 0 .../web/api/dto/status/NodePortStatusDTO.java | 0 .../dto/status/NodeProcessorStatusDTO.java | 0 .../NodeRemoteProcessGroupStatusDTO.java | 0 .../web/api/dto/status/NodeStatusDTO.java | 0 .../api/dto/status/NodeStatusHistoryDTO.java | 0 .../web/api/dto/status/PortStatusDTO.java | 0 .../api/dto/status/ProcessGroupStatusDTO.java | 0 .../api/dto/status/ProcessorStatusDTO.java | 0 .../api/dto/status/RemotePortStatusDTO.java | 0 .../status/RemoteProcessGroupStatusDTO.java | 0 .../nifi/web/api/dto/status/StatusDTO.java | 0 .../api/dto/status/StatusDescriptorDTO.java | 0 .../web/api/dto/status/StatusHistoryDTO.java | 0 .../dto/status/StatusHistoryDetailDTO.java | 0 .../web/api/dto/status/StatusSnapshotDTO.java | 0 .../web/api/dto/util/DateTimeAdapter.java | 0 .../nifi/web/api/dto/util/TimeAdapter.java | 0 .../web/api/dto/util/TimestampAdapter.java | 0 .../nifi/web/api/entity/AboutEntity.java | 0 .../nifi/web/api/entity/ActionEntity.java | 0 .../nifi/web/api/entity/AuthorityEntity.java | 0 .../nifi/web/api/entity/BannerEntity.java | 0 .../web/api/entity/BulletinBoardEntity.java | 0 .../entity/ClusterConnectionStatusEntity.java | 0 .../nifi/web/api/entity/ClusterEntity.java | 0 .../api/entity/ClusterPortStatusEntity.java | 0 .../entity/ClusterProcessorStatusEntity.java | 0 ...ClusterRemoteProcessGroupStatusEntity.java | 0 .../entity/ClusterSearchResultsEntity.java | 0 .../web/api/entity/ClusterStatusEntity.java | 0 .../entity/ClusterStatusHistoryEntity.java | 0 .../nifi/web/api/entity/ConnectionEntity.java | 0 .../web/api/entity/ConnectionsEntity.java | 0 .../entity/ControllerConfigurationEntity.java | 0 .../nifi/web/api/entity/ControllerEntity.java | 0 .../api/entity/ControllerStatusEntity.java | 0 .../nifi/web/api/entity/CounterEntity.java | 0 .../nifi/web/api/entity/CountersEntity.java | 0 .../apache/nifi/web/api/entity/Entity.java | 0 .../web/api/entity/FlowSnippetEntity.java | 0 .../nifi/web/api/entity/FunnelEntity.java | 0 .../nifi/web/api/entity/FunnelsEntity.java | 0 .../nifi/web/api/entity/HistoryEntity.java | 0 .../nifi/web/api/entity/InputPortEntity.java | 0 .../nifi/web/api/entity/InputPortsEntity.java | 0 .../nifi/web/api/entity/LabelEntity.java | 0 .../nifi/web/api/entity/LabelsEntity.java | 0 .../nifi/web/api/entity/LineageEntity.java | 0 .../nifi/web/api/entity/NodeEntity.java | 0 .../nifi/web/api/entity/NodeStatusEntity.java | 0 .../entity/NodeSystemDiagnosticsEntity.java | 0 .../nifi/web/api/entity/OutputPortEntity.java | 0 .../web/api/entity/OutputPortsEntity.java | 0 .../api/entity/PrioritizerTypesEntity.java | 0 .../web/api/entity/ProcessGroupEntity.java | 0 .../api/entity/ProcessGroupStatusEntity.java | 0 .../web/api/entity/ProcessGroupsEntity.java | 0 .../nifi/web/api/entity/ProcessorEntity.java | 0 .../api/entity/ProcessorHistoryEntity.java | 0 .../web/api/entity/ProcessorTypesEntity.java | 0 .../nifi/web/api/entity/ProcessorsEntity.java | 0 .../nifi/web/api/entity/ProvenanceEntity.java | 0 .../web/api/entity/ProvenanceEventEntity.java | 0 .../api/entity/ProvenanceOptionsEntity.java | 0 .../api/entity/RemoteProcessGroupEntity.java | 0 .../entity/RemoteProcessGroupPortEntity.java | 0 .../api/entity/RemoteProcessGroupsEntity.java | 0 .../web/api/entity/SearchResultsEntity.java | 0 .../nifi/web/api/entity/SnippetEntity.java | 0 .../web/api/entity/StatusHistoryEntity.java | 0 .../api/entity/SystemDiagnosticsEntity.java | 0 .../nifi/web/api/entity/TemplateEntity.java | 0 .../nifi/web/api/entity/TemplatesEntity.java | 0 .../nifi/web/api/entity/UserEntity.java | 0 .../nifi/web/api/entity/UserGroupEntity.java | 0 .../api/entity/UserSearchResultsEntity.java | 0 .../nifi/web/api/entity/UsersEntity.java | 0 .../.gitignore | 0 .../pom.xml | 12 +- .../ClusterManagerAuthorizationProvider.java | 0 .../NodeAuthorizationProvider.java | 0 .../protocol/message/DoesDnExistMessage.java | 0 .../message/GetAuthoritiesMessage.java | 0 .../message/GetGroupForUserMessage.java | 0 .../protocol/message/ProtocolMessage.java | 0 .../message/jaxb/JaxbProtocolUtils.java | 0 .../protocol/message/jaxb/ObjectFactory.java | 0 ...pache.nifi.authorization.AuthorityProvider | 0 .../nifi-cluster-protocol}/.gitignore | 0 .../nifi-cluster-protocol}/pom.xml | 7 +- .../ClusterManagerProtocolSender.java | 0 .../cluster/protocol/ConnectionRequest.java | 0 .../cluster/protocol/ConnectionResponse.java | 0 .../nifi/cluster/protocol/Heartbeat.java | 0 .../nifi/cluster/protocol/NodeBulletins.java | 0 .../nifi/cluster/protocol/NodeIdentifier.java | 0 .../cluster/protocol/NodeProtocolSender.java | 0 .../cluster/protocol/ProtocolContext.java | 0 .../cluster/protocol/ProtocolException.java | 0 .../cluster/protocol/ProtocolHandler.java | 0 .../cluster/protocol/ProtocolListener.java | 0 .../protocol/ProtocolMessageMarshaller.java | 0 .../protocol/ProtocolMessageUnmarshaller.java | 0 .../cluster/protocol/StandardDataFlow.java | 0 .../UnknownServiceAddressException.java | 0 .../ClusterManagerProtocolSenderImpl.java | 0 .../ClusterManagerProtocolSenderListener.java | 0 .../impl/ClusterServiceDiscovery.java | 0 .../protocol/impl/ClusterServiceLocator.java | 0 .../impl/ClusterServicesBroadcaster.java | 0 .../protocol/impl/CopyingInputStream.java | 0 .../impl/MulticastProtocolListener.java | 0 .../protocol/impl/NodeProtocolSenderImpl.java | 0 .../impl/NodeProtocolSenderListener.java | 0 .../protocol/impl/SocketProtocolListener.java | 0 .../protocol/jaxb/JaxbProtocolContext.java | 0 .../message/AdaptedConnectionRequest.java | 0 .../message/AdaptedConnectionResponse.java | 0 .../protocol/jaxb/message/AdaptedCounter.java | 0 .../jaxb/message/AdaptedDataFlow.java | 0 .../jaxb/message/AdaptedHeartbeat.java | 0 .../jaxb/message/AdaptedNodeBulletins.java | 0 .../jaxb/message/AdaptedNodeIdentifier.java | 0 .../message/ConnectionRequestAdapter.java | 0 .../message/ConnectionResponseAdapter.java | 0 .../jaxb/message/DataFlowAdapter.java | 0 .../jaxb/message/HeartbeatAdapter.java | 0 .../jaxb/message/JaxbProtocolUtils.java | 0 .../jaxb/message/NodeBulletinsAdapter.java | 0 .../jaxb/message/NodeIdentifierAdapter.java | 0 .../protocol/jaxb/message/ObjectFactory.java | 0 .../message/ConnectionRequestMessage.java | 0 .../message/ConnectionResponseMessage.java | 0 .../ControllerStartupFailureMessage.java | 0 .../protocol/message/DisconnectMessage.java | 0 .../protocol/message/ExceptionMessage.java | 0 .../protocol/message/FlowRequestMessage.java | 0 .../protocol/message/FlowResponseMessage.java | 0 .../protocol/message/HeartbeatMessage.java | 0 .../message/MulticastProtocolMessage.java | 0 .../message/NodeBulletinsMessage.java | 0 .../cluster/protocol/message/PingMessage.java | 0 .../message/PrimaryRoleAssignmentMessage.java | 0 .../protocol/message/ProtocolMessage.java | 0 .../message/ReconnectionFailureMessage.java | 0 .../message/ReconnectionRequestMessage.java | 0 .../message/ReconnectionResponseMessage.java | 0 .../message/ServiceBroadcastMessage.java | 0 .../MulticastConfigurationFactoryBean.java | 0 .../ServerSocketConfigurationFactoryBean.java | 0 .../SocketConfigurationFactoryBean.java | 0 .../nifi-cluster-protocol-context.xml | 0 .../ClusterManagerProtocolSenderImplTest.java | 0 .../impl/ClusterServiceDiscoveryTest.java | 0 .../impl/ClusterServiceLocatorTest.java | 0 .../impl/ClusterServicesBroadcasterTest.java | 0 .../impl/MulticastProtocolListenerTest.java | 0 .../impl/NodeProtocolSenderImplTest.java | 0 .../testutils/DelayedProtocolHandler.java | 0 .../testutils/ReflexiveProtocolHandler.java | 0 .../nifi-cluster-web}/.gitignore | 0 .../nifi-framework/nifi-cluster-web}/pom.xml | 8 +- .../nifi/cluster/context/ClusterContext.java | 0 .../cluster/context/ClusterContextImpl.java | 0 .../context/ClusterContextThreadLocal.java | 0 .../ClusterAwareOptimisticLockingManager.java | 0 .../nifi-framework/nifi-cluster}/.gitignore | 0 .../nifi-framework/nifi-cluster}/pom.xml | 22 +- .../cluster/client/MulticastTestClient.java | 0 .../org/apache/nifi/cluster/event/Event.java | 0 .../nifi/cluster/event/EventManager.java | 0 .../cluster/event/impl/EventManagerImpl.java | 0 .../cluster/firewall/ClusterNodeFirewall.java | 0 .../impl/FileBasedClusterNodeFirewall.java | 0 .../nifi/cluster/flow/ClusterDataFlow.java | 0 .../nifi/cluster/flow/DaoException.java | 0 .../apache/nifi/cluster/flow/DataFlowDao.java | 0 .../flow/DataFlowManagementService.java | 0 .../nifi/cluster/flow/PersistedFlowState.java | 0 .../nifi/cluster/flow/StaleFlowException.java | 0 .../cluster/flow/impl/DataFlowDaoImpl.java | 0 .../impl/DataFlowManagementServiceImpl.java | 0 .../nifi/cluster/manager/ClusterManager.java | 0 .../cluster/manager/HttpClusterManager.java | 0 .../manager/HttpRequestReplicator.java | 0 .../cluster/manager/HttpResponseMapper.java | 0 .../nifi/cluster/manager/NodeResponse.java | 0 .../exception/BlockedByFirewallException.java | 0 .../manager/exception/ClusterException.java | 0 ...ConnectingNodeMutableRequestException.java | 0 ...sconnectedNodeMutableRequestException.java | 0 .../IllegalClusterStateException.java | 0 .../IllegalNodeDeletionException.java | 0 .../IllegalNodeDisconnectionException.java | 0 .../IllegalNodeReconnectionException.java | 0 .../IneligiblePrimaryNodeException.java | 0 .../exception/MutableRequestException.java | 0 .../exception/NoConnectedNodesException.java | 0 .../NoResponseFromNodesException.java | 0 .../exception/NodeDisconnectionException.java | 0 .../exception/NodeReconnectionException.java | 0 .../PrimaryRoleAssignmentException.java | 0 .../SafeModeMutableRequestException.java | 0 .../exception/UnknownNodeException.java | 0 .../exception/UriConstructionException.java | 0 .../manager/impl/ClusteredEventAccess.java | 0 .../impl/ClusteredReportingContext.java | 0 .../impl/HttpRequestReplicatorImpl.java | 0 .../manager/impl/HttpResponseMapperImpl.java | 0 .../manager/impl/WebClusterManager.java | 0 .../org/apache/nifi/cluster/node/Node.java | 0 ...agerProtocolServiceLocatorFactoryBean.java | 0 ...leBasedClusterNodeFirewallFactoryBean.java | 0 .../spring/WebClusterManagerFactoryBean.java | 0 .../reporting/ClusteredReportingTaskNode.java | 0 .../nifi-cluster-manager-context.xml | 0 .../event/impl/EventManagerImplTest.java | 0 .../FileBasedClusterNodeFirewallTest.java | 0 .../DataFlowManagementServiceImplTest.java | 0 .../impl/HttpRequestReplicatorImplTest.java | 0 .../impl/HttpResponseMapperImplTest.java | 0 .../manager/impl/TestWebClusterManager.java | 0 .../manager/testutils/HttpRequest.java | 0 .../manager/testutils/HttpResponse.java | 0 .../manager/testutils/HttpResponseAction.java | 0 .../cluster/manager/testutils/HttpServer.java | 0 .../ClusterManagerProtocolSenderImplTest.java | 0 .../impl/ClusterServiceLocatorTest.java | 0 .../impl/ClusterServicesBroadcasterTest.java | 0 .../impl/MulticastProtocolListenerTest.java | 0 .../impl/NodeProtocolSenderImplTest.java | 0 .../impl/SocketProtocolListenerTest.java | 0 .../testutils/DelayedProtocolHandler.java | 0 .../testutils/ReflexiveProtocolHandler.java | 0 .../src/test/resources/logback-test.xml | 0 .../nifi/cluster/firewall/impl/empty.txt | 0 .../apache/nifi/cluster/firewall/impl/ips.txt | 0 .../nifi-file-authorization-provider}/pom.xml | 7 +- .../FileAuthorizationProvider.java | 0 ...pache.nifi.authorization.AuthorityProvider | 0 .../src/main/xsd/users.xsd | 0 .../FileAuthorizationProviderTest.java | 0 .../nifi-framework-core-api}/.gitignore | 0 .../nifi-framework-core-api}/pom.xml | 9 +- .../nifi/cluster/AdaptedNodeInformation.java | 0 .../nifi/cluster/ClusterNodeInformation.java | 0 .../apache/nifi/cluster/NodeInformant.java | 0 .../apache/nifi/cluster/NodeInformation.java | 0 .../nifi/cluster/NodeInformationAdapter.java | 0 .../nifi/cluster/protocol/DataFlow.java | 0 .../apache/nifi/connectable/Connectable.java | 0 .../nifi/connectable/ConnectableType.java | 0 .../apache/nifi/connectable/Connection.java | 0 .../org/apache/nifi/connectable/Funnel.java | 0 .../org/apache/nifi/connectable/Port.java | 0 .../org/apache/nifi/connectable/Position.java | 0 .../org/apache/nifi/connectable/Size.java | 0 .../AbstractConfiguredComponent.java | 0 .../apache/nifi/controller/AbstractPort.java | 0 .../apache/nifi/controller/Availability.java | 0 .../nifi/controller/ConfiguredComponent.java | 0 .../nifi/controller/ContentAvailability.java | 0 .../org/apache/nifi/controller/Counter.java | 0 .../nifi/controller/EventBasedWorker.java | 0 .../apache/nifi/controller/Heartbeater.java | 0 .../nifi/controller/ProcessScheduler.java | 0 .../apache/nifi/controller/ProcessorNode.java | 0 .../nifi/controller/ReportingTaskNode.java | 0 .../controller/StandardFlowFileQueue.java | 0 .../nifi/controller/StandardFunnel.java | 0 .../controller/ValidationContextFactory.java | 0 .../apache/nifi/controller/WorkerQueue.java | 0 .../exception/CommunicationsException.java | 0 ...ntrollerServiceAlreadyExistsException.java | 0 .../ControllerServiceNotFoundException.java | 0 .../ProcessorInstantiationException.java | 0 .../ProcessorLifeCycleException.java | 0 .../apache/nifi/controller/label/Label.java | 0 .../ReportingTaskInstantiationException.java | 0 .../repository/ContentNotFoundException.java | 0 .../repository/CounterRepository.java | 0 .../controller/repository/FlowFileEvent.java | 0 .../repository/FlowFileEventRepository.java | 0 .../repository/RepositoryStatusReport.java | 0 .../service/ControllerServiceNode.java | 0 .../service/ControllerServiceProvider.java | 0 .../service/ControllerServiceReference.java | 0 .../apache/nifi/events/BulletinFactory.java | 0 .../events/BulletinProcessingStrategy.java | 0 .../apache/nifi/events/ComponentBulletin.java | 0 .../apache/nifi/events/SystemBulletin.java | 0 .../org/apache/nifi/groups/ProcessGroup.java | 0 .../nifi/groups/ProcessGroupCounts.java | 0 .../nifi/groups/RemoteProcessGroup.java | 0 .../RemoteProcessGroupPortDescriptor.java | 0 .../org/apache/nifi/logging/LogMessage.java | 0 .../org/apache/nifi/logging/LogObserver.java | 0 .../apache/nifi/logging/LogRepository.java | 0 .../nifi/logging/LogRepositoryFactory.java | 0 .../org/apache/nifi/nar/NarCloseable.java | 0 .../nifi/nar/NarThreadContextClassLoader.java | 0 .../java/org/apache/nifi/remote/Peer.java | 0 .../org/apache/nifi/remote/PeerStatus.java | 0 .../nifi/remote/PortAuthorizationResult.java | 0 .../nifi/remote/RemoteAuthorizationState.java | 0 .../apache/nifi/remote/RemoteGroupPort.java | 0 .../org/apache/nifi/remote/RootGroupPort.java | 0 .../apache/nifi/remote/TransferDirection.java | 0 .../nifi/remote/VersionedRemoteResource.java | 0 .../nifi/remote/codec/FlowFileCodec.java | 0 .../remote/exception/BadRequestException.java | 0 .../remote/exception/HandshakeException.java | 0 .../exception/NotAuthorizedException.java | 0 .../exception/PortNotRunningException.java | 0 .../remote/exception/ProtocolException.java | 0 .../exception/RequestExpiredException.java | 0 .../exception/UnknownPortException.java | 0 .../nifi/remote/protocol/ClientProtocol.java | 0 .../remote/protocol/CommunicationsInput.java | 0 .../remote/protocol/CommunicationsOutput.java | 0 .../protocol/CommunicationsSession.java | 0 .../nifi/remote/protocol/RequestType.java | 0 .../nifi/remote/protocol/ServerProtocol.java | 0 .../nifi-framework-core}/.gitignore | 0 .../nifi-framework-core}/pom.xml | 17 +- .../apache/nifi/cluster/BulletinsPayload.java | 0 .../nifi/cluster/ConnectionException.java | 0 .../nifi/cluster/DisconnectionException.java | 0 .../apache/nifi/cluster/HeartbeatPayload.java | 0 .../apache/nifi/connectable/LocalPort.java | 0 .../nifi/connectable/StandardConnection.java | 0 .../controller/EventDrivenWorkerQueue.java | 0 .../controller/FileSystemSwapManager.java | 0 .../nifi/controller/FlowController.java | 0 .../nifi/controller/FlowFromDOMFactory.java | 0 .../FlowSerializationException.java | 0 .../nifi/controller/FlowSerializer.java | 0 .../FlowSynchronizationException.java | 0 .../nifi/controller/FlowSynchronizer.java | 0 .../nifi/controller/FlowUnmarshaller.java | 0 .../nifi/controller/SnippetManager.java | 0 .../nifi/controller/StandardCounter.java | 0 .../controller/StandardFlowSerializer.java | 0 .../nifi/controller/StandardFlowService.java | 0 .../controller/StandardFlowSynchronizer.java | 0 .../controller/StandardProcessorNode.java | 0 .../nifi/controller/StandardSnippet.java | 0 .../org/apache/nifi/controller/Template.java | 0 .../nifi/controller/TemplateManager.java | 0 .../UninheritableFlowException.java | 0 .../FlowFileConsumptionException.java | 0 .../ReportingTaskInstantiationException.java | 0 .../exception/ValidationException.java | 0 .../nifi/controller/label/StandardLabel.java | 0 .../reporting/AbstractReportingTaskNode.java | 0 .../reporting/StandardReportingContext.java | 0 ...tandardReportingInitializationContext.java | 0 .../reporting/StandardReportingTaskNode.java | 0 .../repository/BatchingSessionFactory.java | 0 .../repository/ConnectionSwapInfo.java | 0 .../repository/FileSystemRepository.java | 0 .../controller/repository/ProcessContext.java | 0 .../repository/ProvenanceEventEnricher.java | 0 .../repository/RepositoryPurgeException.java | 0 .../repository/RingBufferEventRepository.java | 0 .../repository/StandardCounterRepository.java | 0 .../repository/StandardFlowFileEvent.java | 0 .../repository/StandardFlowFileRecord.java | 0 .../repository/StandardProcessSession.java | 0 .../StandardProcessSessionFactory.java | 0 .../StandardProvenanceReporter.java | 0 .../repository/StandardRepositoryRecord.java | 0 .../StandardRepositoryStatusReport.java | 0 .../repository/VolatileContentRepository.java | 0 .../VolatileFlowFileRepository.java | 0 .../WriteAheadFlowFileRepository.java | 0 .../repository/claim/ContentDirection.java | 0 .../claim/StandardContentClaim.java | 0 .../claim/StandardContentClaimManager.java | 0 .../io/ArrayManagedOutputStream.java | 0 .../io/ByteCountingInputStream.java | 0 .../io/ByteCountingOutputStream.java | 0 .../io/DisableOnCloseOutputStream.java | 0 .../io/FlowFileAccessInputStream.java | 0 .../io/FlowFileAccessOutputStream.java | 0 .../repository/io/LimitedInputStream.java | 0 .../controller/repository/io/LongHolder.java | 0 .../repository/io/MemoryManager.java | 0 .../io/SyncOnCloseOutputStream.java | 0 .../scheduling/ConnectableProcessContext.java | 0 .../EventDrivenSchedulingAgent.java | 0 .../scheduling/ProcessContextFactory.java | 0 .../scheduling/QuartzSchedulingAgent.java | 0 .../controller/scheduling/ScheduleState.java | 0 .../scheduling/SchedulingAgent.java | 0 .../scheduling/StandardProcessScheduler.java | 0 .../TimerDrivenSchedulingAgent.java | 0 .../service/ControllerServiceLoader.java | 0 .../service/StandardConfigurationContext.java | 0 ...ontrollerServiceInitializationContext.java | 0 .../StandardControllerServiceNode.java | 0 .../StandardControllerServiceProvider.java | 0 .../StandardControllerServiceReference.java | 0 .../history/StandardMetricDescriptor.java | 0 .../status/history/StandardStatusHistory.java | 0 .../history/StandardStatusSnapshot.java | 0 .../status/history/StatusHistoryUtil.java | 0 .../VolatileComponentStatusRepository.java | 0 .../tasks/ContinuallyRunConnectableTask.java | 0 .../tasks/ContinuallyRunProcessorTask.java | 0 .../controller/tasks/ExpireFlowFiles.java | 0 .../tasks/ReportingTaskWrapper.java | 0 .../nifi/diagnostics/DiagnosticUtils.java | 0 .../nifi/diagnostics/GarbageCollection.java | 0 .../apache/nifi/diagnostics/StorageUsage.java | 0 .../nifi/diagnostics/SystemDiagnostics.java | 0 .../diagnostics/SystemDiagnosticsFactory.java | 0 .../nifi/encrypt/EncryptionException.java | 0 .../apache/nifi/encrypt/StringEncryptor.java | 0 .../org/apache/nifi/engine/FlowEngine.java | 0 .../NodeBulletinProcessingStrategy.java | 0 .../events/VolatileBulletinRepository.java | 0 .../events/network/CommunicationsFailure.java | 0 .../nifi/events/network/NetworkTransfer.java | 0 .../fingerprint/FingerprintException.java | 0 .../nifi/fingerprint/FingerprintFactory.java | 0 .../nifi/groups/StandardProcessGroup.java | 0 .../org/apache/nifi/jaxb/AdaptedBulletin.java | 0 .../org/apache/nifi/jaxb/AdaptedCounter.java | 0 .../org/apache/nifi/jaxb/BulletinAdapter.java | 0 .../org/apache/nifi/jaxb/CounterAdapter.java | 0 .../org/apache/nifi/lifecycle/LifeCycle.java | 0 .../nifi/lifecycle/LifeCycleException.java | 0 .../lifecycle/LifeCycleStartException.java | 0 .../lifecycle/LifeCycleStopException.java | 0 .../nifi/logging/ProcessorLogObserver.java | 0 .../repository/StandardLogRepository.java | 0 .../persistence/FlowConfigurationDAO.java | 0 .../StandardSnippetDeserializer.java | 0 .../StandardSnippetSerializer.java | 0 .../StandardXMLFlowConfigurationDAO.java | 0 .../persistence/TemplateDeserializer.java | 0 .../nifi/persistence/TemplateSerializer.java | 0 .../nifi/processor/SimpleProcessLogger.java | 0 .../processor/StandardProcessContext.java | 0 ...tandardProcessorInitializationContext.java | 0 .../nifi/processor/StandardPropertyValue.java | 0 .../processor/StandardSchedulingContext.java | 0 .../processor/StandardValidationContext.java | 0 .../StandardValidationContextFactory.java | 0 .../remote/StandardRemoteProcessGroup.java | 0 ...ndardRemoteProcessGroupPortDescriptor.java | 0 .../org/apache/nifi/services/FlowService.java | 0 .../spring/FlowControllerFactoryBean.java | 0 .../spring/RingBufferEventRepositoryBean.java | 0 .../StandardFlowServiceFactoryBean.java | 0 .../nifi/util/ComponentStatusReport.java | 0 .../org/apache/nifi/util/Connectables.java | 0 .../java/org/apache/nifi/util/DomUtils.java | 0 .../org/apache/nifi/util/ReflectionUtils.java | 0 .../org/apache/nifi/util/SnippetUtils.java | 0 .../ControllerServiceConfiguration.xsd | 0 .../src/main/resources/FlowConfiguration.xsd | 0 .../resources/ReportingTaskConfiguration.xsd | 0 .../src/main/resources/nifi-context.xml | 0 .../nifi/cluster/HeartbeatPayloadTest.java | 0 .../controller/StandardFlowServiceTest.java | 0 .../controller/TestFileSystemSwapManager.java | 0 .../repository/TestFileSystemRepository.java | 0 .../TestRingBufferEventRepository.java | 0 .../TestStandardProcessSession.java | 0 .../TestStandardProvenanceReporter.java | 0 .../TestVolatileContentRepository.java | 0 .../TestWriteAheadFlowFileRepository.java | 0 .../io/TestLimitedOutputStream.java | 0 .../controller/repository/util/DiskUtils.java | 0 .../fingerprint/FingerprintFactoryTest.java | 0 .../processor/TestStandardPropertyValue.java | 0 .../DataGeneratorTestProcessor.java | 0 .../StubAttributeLoggerProcessor.java | 0 .../StubTerminationFileProcessor.java | 0 .../src/test/resources/conf/0bytes.xml | 0 .../test/resources/conf/all-flow-corrupt.xml | 0 .../resources/conf/all-flow-inheritable.xml | 0 .../resources/conf/all-flow-uninheritable.xml | 0 .../src/test/resources/conf/all-flow.xml | 0 .../src/test/resources/conf/nifi.properties | 0 .../test/resources/conf/only-termination.xml | 0 .../src/test/resources/conf/remote-flow.xml | 0 .../src/test/resources/conf/standard-flow.xml | 0 .../src/test/resources/conf/taskConfig.xml | 0 .../test/resources/conf/termination-only.xml | 0 .../src/test/resources/hello.txt | 0 .../src/test/resources/logback-test.xml | 0 .../resources/nifi-with-remote.properties | 0 .../src/test/resources/nifi.properties | 0 .../resources/nifi/fingerprint/flow1a.xml | 0 .../resources/nifi/fingerprint/flow1b.xml | 0 .../test/resources/nifi/fingerprint/flow2.xml | 0 .../src/test/resources/old-swap-file.swap | Bin .../nifi-framework/nifi-nar-utils}/.gitignore | 0 .../nifi-framework/nifi-nar-utils}/pom.xml | 6 +- .../org/apache/nifi/nar/ExtensionManager.java | 0 .../org/apache/nifi/nar/ExtensionMapping.java | 0 .../org/apache/nifi/nar/NarClassLoader.java | 0 .../org/apache/nifi/nar/NarClassLoaders.java | 0 .../java/org/apache/nifi/nar/NarUnpacker.java | 0 .../java/org/apache/nifi/util/FileUtils.java | 0 .../nifi-framework/nifi-resources}/pom.xml | 4 +- .../src/main/assembly/dependencies.xml | 0 .../src/main/resources/bin/dump-nifi.bat | 0 .../src/main/resources/bin/nifi-status.bat | 0 .../src/main/resources/bin/nifi.sh | 0 .../src/main/resources/bin/run-nifi.bat | 0 .../src/main/resources/bin/start-nifi.bat | 0 .../src/main/resources/bin/stop-nifi.bat | 0 .../resources/conf/authority-providers.xml | 0 .../main/resources/conf/authorized-users.xml | 0 .../src/main/resources/conf/bootstrap.conf | 0 .../resources/conf/controller-services.xml | 0 .../src/main/resources/conf/logback.xml | 0 .../src/main/resources/conf/nifi.properties | 2 +- .../main/resources/conf/reporting-tasks.xml | 0 .../nifi-framework/nifi-runtime}/.gitignore | 0 .../nifi-framework/nifi-runtime}/pom.xml | 6 +- .../org/apache/nifi/BootstrapListener.java | 0 .../src/main/java/org/apache/nifi/NiFi.java | 0 .../main/java/org/apache/nifi/NiFiServer.java | 0 .../apache/nifi/util/LimitingInputStream.java | 0 .../nifi-framework/nifi-security}/.gitignore | 0 .../nifi-framework/nifi-security}/pom.xml | 4 +- .../util/SslContextCreationException.java | 0 .../security/util/SslContextFactory.java | 0 .../framework/security/util/SslException.java | 0 .../security/util/SslServerSocketFactory.java | 0 ...lServerSocketFactoryCreationException.java | 0 .../security/util/SslSocketFactory.java | 0 .../SslSocketFactoryCreationException.java | 0 .../security/util/SslContextFactoryTest.java | 0 .../src/test/resources/localhost-ks.jks | Bin .../src/test/resources/localhost-ts.jks | Bin .../src/test/resources/log4j.properties | 0 .../nifi-site-to-site}/.gitignore | 0 .../nifi-framework/nifi-site-to-site}/pom.xml | 8 +- .../util/RemoteProcessGroupUtils.java | 0 .../remote/AbstractCommunicationsSession.java | 0 .../nifi/remote/RemoteResourceFactory.java | 0 .../nifi/remote/RemoteResourceManager.java | 0 .../nifi/remote/RemoteSiteListener.java | 0 .../nifi/remote/SocketRemoteSiteListener.java | 0 .../nifi/remote/StandardRemoteGroupPort.java | 0 .../nifi/remote/StandardRootGroupPort.java | 0 .../remote/codec/StandardFlowFileCodec.java | 0 .../exception/UnsupportedCodecException.java | 0 .../SocketChannelCommunicationsSession.java | 0 .../remote/io/socket/SocketChannelInput.java | 0 .../remote/io/socket/SocketChannelOutput.java | 0 ...SSLSocketChannelCommunicationsSession.java | 0 .../io/socket/ssl/SSLSocketChannelInput.java | 0 .../io/socket/ssl/SSLSocketChannelOutput.java | 0 .../socket/ClusterManagerServerProtocol.java | 0 .../protocol/socket/HandshakeProperty.java | 0 .../nifi/remote/protocol/socket/Response.java | 0 .../remote/protocol/socket/ResponseCode.java | 0 .../protocol/socket/SocketClientProtocol.java | 0 .../socket/SocketFlowFileServerProtocol.java | 0 ...org.apache.nifi.remote.codec.FlowFileCodec | 0 ...apache.nifi.remote.protocol.ClientProtocol | 0 ...apache.nifi.remote.protocol.ServerProtocol | 0 .../remote/TestStandardRemoteGroupPort.java | 0 .../TestStandardSiteToSiteProtocol.java | 0 .../io/socket/TestSocketChannelStreams.java | 0 .../io/socket/ssl/TestSSLSocketChannel.java | 0 .../resources/dummy-certs/localhost-ks.jks | Bin .../resources/dummy-certs/localhost-ts.jks | Bin .../src/test/resources/logback-test.xml | 0 .../src/test/resources/nifi.properties | 0 .../nifi-user-actions}/.gitignore | 0 .../nifi-framework/nifi-user-actions}/pom.xml | 4 +- .../java/org/apache/nifi/action/Action.java | 0 .../org/apache/nifi/action/Component.java | 0 .../org/apache/nifi/action/Operation.java | 0 .../component/details/ComponentDetails.java | 0 .../component/details/ProcessorDetails.java | 0 .../details/RemoteProcessGroupDetails.java | 0 .../nifi/action/details/ActionDetails.java | 0 .../nifi/action/details/ConfigureDetails.java | 0 .../nifi/action/details/ConnectDetails.java | 0 .../nifi/action/details/MoveDetails.java | 0 .../nifi/action/details/PurgeDetails.java | 0 .../nifi-custom-ui-utilities}/.gitignore | 0 .../nifi-custom-ui-utilities}/pom.xml | 6 +- .../web/HttpServletRequestContextConfig.java | 0 .../nifi-web/nifi-jetty}/.gitignore | 0 .../nifi-web}/nifi-jetty/pom.xml | 18 +- .../src/main/assembly/distribution.xml | 0 .../apache/nifi/web/server/JettyServer.java | 0 .../server/ServerConfigurationException.java | 0 .../org/apache/nifi/web/webdefault.xml | 0 .../nifi-web/nifi-web-api}/.gitignore | 0 .../nifi-web}/nifi-web-api/pom.xml | 25 +- .../src/main/enunciate/enunciate.xml | 0 .../src/main/enunciate/images/home.png | Bin .../src/main/enunciate/override.css | 0 .../org/apache/nifi/aop/MethodProfiler.java | 0 .../apache/nifi/audit/ControllerAuditor.java | 0 .../org/apache/nifi/audit/FunnelAuditor.java | 0 .../org/apache/nifi/audit/NiFiAuditor.java | 0 .../org/apache/nifi/audit/PortAuditor.java | 0 .../nifi/audit/ProcessGroupAuditor.java | 0 .../apache/nifi/audit/ProcessorAuditor.java | 0 .../nifi/audit/RelationshipAuditor.java | 0 .../nifi/audit/RemoteProcessGroupAuditor.java | 0 .../org/apache/nifi/audit/SnippetAuditor.java | 0 .../nifi/web/ClusterRequestException.java | 0 ...llegalClusterResourceRequestException.java | 0 .../apache/nifi/web/NiFiCoreException.java | 0 .../apache/nifi/web/NiFiServiceFacade.java | 0 .../nifi/web/NiFiServiceFacadeLock.java | 0 .../nifi/web/StandardNiFiServiceFacade.java | 0 .../nifi/web/StandardNiFiWebContext.java | 0 .../nifi/web/api/ApplicationResource.java | 0 .../nifi/web/api/BulletinBoardResource.java | 0 .../apache/nifi/web/api/ClusterResource.java | 0 .../nifi/web/api/ConnectionResource.java | 0 .../nifi/web/api/ControllerResource.java | 0 .../apache/nifi/web/api/FunnelResource.java | 0 .../apache/nifi/web/api/HistoryResource.java | 0 .../nifi/web/api/InputPortResource.java | 0 .../apache/nifi/web/api/LabelResource.java | 0 .../org/apache/nifi/web/api/NodeResource.java | 0 .../nifi/web/api/OutputPortResource.java | 0 .../nifi/web/api/ProcessGroupResource.java | 0 .../nifi/web/api/ProcessorResource.java | 0 .../nifi/web/api/ProvenanceResource.java | 0 .../web/api/RemoteProcessGroupResource.java | 0 .../apache/nifi/web/api/SnippetResource.java | 0 .../web/api/SystemDiagnosticsResource.java | 0 .../apache/nifi/web/api/TemplateResource.java | 0 .../nifi/web/api/UserGroupResource.java | 0 .../org/apache/nifi/web/api/UserResource.java | 0 .../config/AccessDeniedExceptionMapper.java | 0 .../AccountNotFoundExceptionMapper.java | 0 .../config/AdministrationExceptionMapper.java | 0 ...ionCredentialsNotFoundExceptionMapper.java | 0 .../api/config/ClusterExceptionMapper.java | 0 ...tingNodeMutableRequestExceptionMapper.java | 0 ...ctedNodeMutableRequestExceptionMapper.java | 0 .../IllegalArgumentExceptionMapper.java | 0 ...ClusterResourceRequestExceptionMapper.java | 0 .../IllegalClusterStateExceptionMapper.java | 0 .../IllegalNodeDeletionExceptionMapper.java | 0 ...legalNodeDisconnectionExceptionMapper.java | 0 ...llegalNodeReconnectionExceptionMapper.java | 0 .../config/IllegalStateExceptionMapper.java | 0 .../IneligiblePrimaryNodeExceptionMapper.java | 0 .../InvalidRevisionExceptionMapper.java | 0 .../config/JsonMappingExceptionMapper.java | 0 .../api/config/JsonParseExceptionMapper.java | 0 .../config/MutableRequestExceptionMapper.java | 0 .../api/config/NiFiCoreExceptionMapper.java | 0 .../NoConnectedNodesExceptionMapper.java | 0 .../NoResponseFromNodesExceptionMapper.java | 0 .../NodeDisconnectionExceptionMapper.java | 0 .../NodeReconnectionExceptionMapper.java | 0 .../PrimaryRoleAssignmentExceptionMapper.java | 0 .../ResourceNotFoundExceptionMapper.java | 0 ...SafeModeMutableRequestExceptionMapper.java | 0 .../nifi/web/api/config/ThrowableMapper.java | 0 .../config/UnknownNodeExceptionMapper.java | 0 .../api/config/ValidationExceptionMapper.java | 0 .../config/WebApplicationExceptionMapper.java | 0 .../apache/nifi/web/api/dto/DtoFactory.java | 0 .../org/apache/nifi/web/api/package-info.java | 0 .../BulletinBoardPatternParameter.java | 0 .../web/api/request/ClientIdParameter.java | 0 .../api/request/ConnectableTypeParameter.java | 0 .../web/api/request/DateTimeParameter.java | 0 .../nifi/web/api/request/DoubleParameter.java | 0 .../web/api/request/IntegerParameter.java | 0 .../nifi/web/api/request/LongParameter.java | 0 .../ApplicationStartupContextListener.java | 0 .../nifi/web/controller/ControllerFacade.java | 0 .../web/controller/StandardSearchContext.java | 0 .../apache/nifi/web/dao/ConnectionDAO.java | 0 .../org/apache/nifi/web/dao/FunnelDAO.java | 0 .../org/apache/nifi/web/dao/LabelDAO.java | 0 .../java/org/apache/nifi/web/dao/PortDAO.java | 0 .../apache/nifi/web/dao/ProcessGroupDAO.java | 0 .../org/apache/nifi/web/dao/ProcessorDAO.java | 0 .../nifi/web/dao/RemoteProcessGroupDAO.java | 0 .../org/apache/nifi/web/dao/SnippetDAO.java | 0 .../org/apache/nifi/web/dao/TemplateDAO.java | 0 .../nifi/web/dao/impl/ComponentDAO.java | 0 .../web/dao/impl/StandardConnectionDAO.java | 0 .../nifi/web/dao/impl/StandardFunnelDAO.java | 0 .../web/dao/impl/StandardInputPortDAO.java | 0 .../nifi/web/dao/impl/StandardLabelDAO.java | 0 .../web/dao/impl/StandardOutputPortDAO.java | 0 .../web/dao/impl/StandardProcessGroupDAO.java | 0 .../web/dao/impl/StandardProcessorDAO.java | 0 .../impl/StandardRemoteProcessGroupDAO.java | 0 .../nifi/web/dao/impl/StandardSnippetDAO.java | 0 .../web/dao/impl/StandardTemplateDAO.java | 0 .../nifi/web/filter/NodeRequestFilter.java | 0 .../apache/nifi/web/filter/RequestLogger.java | 0 .../nifi/web/filter/ThreadLocalFilter.java | 0 .../apache/nifi/web/filter/TimerFilter.java | 0 .../nifi/web/util/ClientResponseUtils.java | 0 .../nifi/web/util/DownloadableContent.java | 0 .../apache/nifi/web/util/SnippetUtils.java | 0 .../main/resources/nifi-web-api-context.xml | 0 .../src/main/webapp/WEB-INF/web.xml | 0 .../nifi/integration/NiFiWebApiTest.java | 0 .../accesscontrol/AdminAccessControlTest.java | 0 .../accesscontrol/DfmAccessControlTest.java | 0 .../ReadOnlyAccessControlTest.java | 0 .../util/NiFiTestAuthorizationProvider.java | 0 .../nifi/integration/util/NiFiTestServer.java | 0 .../nifi/integration/util/NiFiTestUser.java | 0 .../integration/util/SourceTestProcessor.java | 0 .../util/TerminationTestProcessor.java | 0 .../integration/util/TestPrioritizer.java | 0 ...pache.nifi.authorization.AuthorityProvider | 0 ...g.apache.nifi.flowfile.FlowFilePrioritizer | 0 .../org.apache.nifi.processor.Processor | 0 .../access-control/authority-providers.xml | 0 .../access-control/controller-services.xml | 0 .../resources/access-control/localhost-ks.jks | Bin .../resources/access-control/localhost-ts.jks | Bin .../resources/access-control/nifi.properties | 0 .../access-control/reporting-tasks.xml | 0 .../src/test/resources/logback-test.xml | 0 .../nifi-web/nifi-web-docs}/.gitignore | 0 .../nifi-web}/nifi-web-docs/pom.xml | 5 +- .../web/docs/DocumentationController.java | 0 .../main/webapp/WEB-INF/jsp/documentation.jsp | 0 .../WEB-INF/jsp/no-documentation-found.jsp | 0 .../src/main/webapp/WEB-INF/web.xml | 0 .../src/main/webapp/css/component-usage.css | 0 .../src/main/webapp/css/main.css | 0 .../src/main/webapp/images/bgBannerFoot.png | Bin .../src/main/webapp/images/bgHeader.png | Bin .../src/main/webapp/images/bgTableHeader.png | Bin .../src/main/webapp/js/application.js | 0 .../nifi-web/nifi-web-error}/.gitignore | 0 .../nifi-web}/nifi-web-error/pom.xml | 3 +- .../nifi/web/filter/CatchAllFilter.java | 0 .../src/main/webapp/WEB-INF/web.xml | 0 .../nifi-web-error/src/main/webapp/index.jsp | 0 .../nifi-web-optimistic-locking}/.gitignore | 0 .../nifi-web-optimistic-locking}/pom.xml | 5 +- .../nifi/web/ConfigurationSnapshot.java | 0 .../nifi/web/OptimisticLockingManager.java | 0 .../web/StandardOptimisticLockingManager.java | 0 .../nifi-web/nifi-web-security}/.gitignore | 0 .../nifi-web/nifi-web-security}/pom.xml | 7 +- .../org/apache/nifi/web/security/DnUtils.java | 0 .../web/security/UntrustedProxyException.java | 0 .../anonymous/NiFiAnonymousUserFilter.java | 0 .../NiFiAuthenticationEntryPoint.java | 0 .../NiFiAuthorizationService.java | 0 .../NodeAuthorizedUserFilter.java | 0 .../web/security/user/NiFiUserDetails.java | 0 .../nifi/web/security/user/NiFiUserUtils.java | 0 .../x509/SubjectDnX509PrincipalExtractor.java | 0 .../x509/X509AuthenticationFilter.java | 0 .../x509/X509CertificateExtractor.java | 0 .../x509/ocsp/CertificateStatusException.java | 0 .../x509/ocsp/OcspCertificateValidator.java | 0 .../web/security/x509/ocsp/OcspRequest.java | 0 .../web/security/x509/ocsp/OcspStatus.java | 0 .../resources/nifi-web-security-context.xml | 0 .../NiFiAuthorizationServiceTest.java | 0 .../nifi-web/nifi-web-ui}/.gitignore | 0 .../nifi-web}/nifi-web-ui/pom.xml | 8 +- .../apache/nifi/web/filter/IeEdgeHeader.java | 0 .../apache/nifi/web/servlet/ConvertSvg.java | 0 .../filters/bulletin-board-min.properties | 0 .../filters/bulletin-board.properties | 0 .../resources/filters/canvas-min.properties | 0 .../main/resources/filters/canvas.properties | 0 .../resources/filters/cluster-min.properties | 0 .../main/resources/filters/cluster.properties | 0 .../resources/filters/counters-min.properties | 0 .../resources/filters/counters.properties | 0 .../resources/filters/history-min.properties | 0 .../main/resources/filters/history.properties | 0 .../filters/provenance-min.properties | 0 .../resources/filters/provenance.properties | 0 .../resources/filters/summary-min.properties | 0 .../main/resources/filters/summary.properties | 0 .../filters/templates-min.properties | 0 .../resources/filters/templates.properties | 0 .../resources/filters/users-min.properties | 0 .../main/resources/filters/users.properties | 0 .../webapp/WEB-INF/pages/bulletin-board.jsp | 0 .../src/main/webapp/WEB-INF/pages/canvas.jsp | 0 .../src/main/webapp/WEB-INF/pages/cluster.jsp | 0 .../main/webapp/WEB-INF/pages/counters.jsp | 0 .../src/main/webapp/WEB-INF/pages/history.jsp | 0 .../webapp/WEB-INF/pages/message-page.jsp | 0 .../main/webapp/WEB-INF/pages/provenance.jsp | 0 .../src/main/webapp/WEB-INF/pages/summary.jsp | 0 .../main/webapp/WEB-INF/pages/templates.jsp | 0 .../src/main/webapp/WEB-INF/pages/users.jsp | 0 .../webapp/WEB-INF/partials/banners-main.jsp | 0 .../WEB-INF/partials/banners-utility.jsp | 0 .../bulletin-board/bulletin-board-content.jsp | 0 .../WEB-INF/partials/canvas/about-dialog.jsp | 0 .../WEB-INF/partials/canvas/canvas-header.jsp | 0 .../canvas/connection-configuration.jsp | 0 .../partials/canvas/connections-dialog.jsp | 0 .../partials/canvas/fill-color-dialog.jsp | 0 .../WEB-INF/partials/canvas/flow-status.jsp | 0 .../canvas/instantiate-template-dialog.jsp | 0 .../partials/canvas/label-configuration.jsp | 0 .../WEB-INF/partials/canvas/navigation.jsp | 0 .../partials/canvas/new-port-dialog.jsp | 0 .../canvas/new-process-group-dialog.jsp | 0 .../partials/canvas/new-processor-dialog.jsp | 0 .../canvas/new-processor-property-dialog.jsp | 0 .../new-remote-process-group-dialog.jsp | 0 .../partials/canvas/new-template-dialog.jsp | 0 .../partials/canvas/port-configuration.jsp | 0 .../WEB-INF/partials/canvas/port-details.jsp | 0 .../canvas/process-group-configuration.jsp | 0 .../partials/canvas/process-group-details.jsp | 0 .../canvas/processor-configuration.jsp | 0 .../WEB-INF/partials/canvas/registration.jsp | 0 .../canvas/remote-port-configuration.jsp | 0 .../remote-process-group-configuration.jsp | 0 .../canvas/remote-process-group-details.jsp | 0 .../canvas/remote-process-group-ports.jsp | 0 .../canvas/secure-port-configuration.jsp | 0 .../partials/canvas/secure-port-details.jsp | 0 .../partials/canvas/settings-content.jsp | 0 .../webapp/WEB-INF/partials/canvas/shell.jsp | 0 .../partials/cluster/cluster-content.jsp | 0 .../partials/cluster/node-details-dialog.jsp | 0 .../WEB-INF/partials/connection-details.jsp | 0 .../partials/counters/counters-content.jsp | 0 .../history/action-details-dialog.jsp | 0 .../partials/history/history-content.jsp | 0 .../history/history-filter-dialog.jsp | 0 .../partials/history/history-purge-dialog.jsp | 0 .../webapp/WEB-INF/partials/message-pane.jsp | 0 .../webapp/WEB-INF/partials/ok-dialog.jsp | 0 .../WEB-INF/partials/processor-details.jsp | 0 .../provenance/lineage-query-dialog.jsp | 0 .../provenance/provenance-content.jsp | 0 .../provenance-event-details-dialog.jsp | 0 .../provenance/provenance-query-dialog.jsp | 0 .../provenance/provenance-search-dialog.jsp | 0 .../partials/status-history-dialog.jsp | 0 .../cluster-connection-summary-dialog.jsp | 0 .../cluster-input-port-summary-dialog.jsp | 0 .../cluster-output-port-summary-dialog.jsp | 0 .../cluster-processor-summary-dialog.jsp | 0 ...er-remote-process-group-summary-dialog.jsp | 0 .../partials/summary/summary-content.jsp | 0 .../summary/system-diagnostics-dialog.jsp | 0 .../summary/view-single-node-dialog.jsp | 0 .../partials/templates/templates-content.jsp | 0 .../partials/users/group-revoke-dialog.jsp | 0 .../partials/users/group-roles-dialog.jsp | 0 .../partials/users/user-delete-dialog.jsp | 0 .../partials/users/user-details-dialog.jsp | 0 .../partials/users/user-group-dialog.jsp | 0 .../partials/users/user-revoke-dialog.jsp | 0 .../partials/users/user-roles-dialog.jsp | 0 .../WEB-INF/partials/users/users-content.jsp | 0 .../webapp/WEB-INF/partials/yes-no-dialog.jsp | 0 .../src/main/webapp/WEB-INF/web.xml | 0 .../nifi-web-ui/src/main/webapp/css/about.css | 0 .../src/main/webapp/css/banner.css | 0 .../src/main/webapp/css/bulletin-board.css | 0 .../src/main/webapp/css/canvas.css | 0 .../src/main/webapp/css/cluster.css | 0 .../webapp/css/connection-configuration.css | 0 .../main/webapp/css/connection-details.css | 0 .../src/main/webapp/css/counters.css | 0 .../src/main/webapp/css/dialog.css | 0 .../src/main/webapp/css/flow-status.css | 0 .../nifi-web-ui/src/main/webapp/css/graph.css | 0 .../src/main/webapp/css/header.css | 0 .../src/main/webapp/css/history.css | 0 .../main/webapp/css/label-configuration.css | 0 .../nifi-web-ui/src/main/webapp/css/main.css | 0 .../src/main/webapp/css/message-page.css | 0 .../src/main/webapp/css/message-pane.css | 0 .../src/main/webapp/css/navigation.css | 0 .../main/webapp/css/new-processor-dialog.css | 0 .../main/webapp/css/port-configuration.css | 0 .../src/main/webapp/css/port-details.css | 0 .../css/process-group-configuration.css | 0 .../main/webapp/css/process-group-details.css | 0 .../webapp/css/processor-configuration.css | 0 .../src/main/webapp/css/processor-details.css | 0 .../src/main/webapp/css/provenance.css | 0 .../src/main/webapp/css/registration.css | 0 .../remote-process-group-configuration.css | 0 .../nifi-web-ui/src/main/webapp/css/reset.css | 0 .../src/main/webapp/css/settings.css | 0 .../nifi-web-ui/src/main/webapp/css/shell.css | 0 .../src/main/webapp/css/status-history.css | 0 .../src/main/webapp/css/summary.css | 0 .../src/main/webapp/css/templates.css | 0 .../nifi-web-ui/src/main/webapp/css/users.css | 0 .../src/main/webapp/images/addConnect.png | Bin .../src/main/webapp/images/bg-error.png | Bin .../src/main/webapp/images/bgBannerFoot.png | Bin .../src/main/webapp/images/bgBannerHead.png | Bin .../src/main/webapp/images/bgBreadcrumbs.png | Bin .../src/main/webapp/images/bgButton.png | Bin .../src/main/webapp/images/bgButtonOver.png | Bin .../main/webapp/images/bgButtonSelected.png | Bin .../webapp/images/bgButtonSelectedOver.png | Bin .../src/main/webapp/images/bgContextMenu.png | Bin .../main/webapp/images/bgControlsInset.png | Bin .../src/main/webapp/images/bgHeader.png | Bin .../src/main/webapp/images/bgInputText.png | Bin .../src/main/webapp/images/bgNifiLogo.png | Bin .../src/main/webapp/images/bgNifiToolbar.png | Bin .../main/webapp/images/bgNifiToolbarEdge.png | Bin .../src/main/webapp/images/bgOutline.png | Bin .../src/main/webapp/images/bgPanCenter.png | Bin .../src/main/webapp/images/bgPanZoom.png | Bin .../images/bgProcessGroupDetailsArea.png | Bin .../webapp/images/bgProcessorStatArea.png | Bin .../bgRemoteProcessGroupDetailsArea.png | Bin .../src/main/webapp/images/bgSearchInput.png | Bin .../src/main/webapp/images/bgShellClose.png | Bin .../src/main/webapp/images/bgStatusPanel.png | Bin .../src/main/webapp/images/bgTabContainer.png | Bin .../src/main/webapp/images/bgTableHeader.png | Bin .../main/webapp/images/bgToolbarBtnBorder.png | Bin .../src/main/webapp/images/blueBtnBg-over.jpg | Bin .../src/main/webapp/images/blueBtnBg.jpg | Bin .../src/main/webapp/images/buttonColor.png | Bin .../src/main/webapp/images/buttonCopy.png | Bin .../src/main/webapp/images/buttonDelete.png | Bin .../src/main/webapp/images/buttonDisable.png | Bin .../src/main/webapp/images/buttonEnable.png | Bin .../src/main/webapp/images/buttonGroup.png | Bin .../main/webapp/images/buttonNewProperty.png | Bin .../src/main/webapp/images/buttonOutline.png | Bin .../src/main/webapp/images/buttonPanDown.png | Bin .../src/main/webapp/images/buttonPanLeft.png | Bin .../src/main/webapp/images/buttonPanRight.png | Bin .../src/main/webapp/images/buttonPanUp.png | Bin .../src/main/webapp/images/buttonPaste.png | Bin .../src/main/webapp/images/buttonRefresh.png | Bin .../src/main/webapp/images/buttonRun.png | Bin .../src/main/webapp/images/buttonStop.png | Bin .../src/main/webapp/images/buttonTemplate.png | Bin .../src/main/webapp/images/buttonZoom100.png | Bin .../src/main/webapp/images/buttonZoomFit.png | Bin .../src/main/webapp/images/buttonZoomIn.png | Bin .../src/main/webapp/images/buttonZoomOut.png | Bin .../src/main/webapp/images/cluster.png | Bin .../src/main/webapp/images/grayBtnBg-over.jpg | Bin .../src/main/webapp/images/grayBtnBg.jpg | Bin .../src/main/webapp/images/grid.gif | Bin .../src/main/webapp/images/headerTabBg.gif | Bin .../src/main/webapp/images/iconAdminUser.png | Bin .../src/main/webapp/images/iconAlert.png | Bin .../main/webapp/images/iconAlertDialog.png | Bin .../main/webapp/images/iconAutoRefresh.png | Bin .../src/main/webapp/images/iconBulletin.png | Bin .../main/webapp/images/iconBulletinBoard.png | Bin .../src/main/webapp/images/iconCenterView.png | Bin .../src/main/webapp/images/iconChart.png | Bin .../src/main/webapp/images/iconClose.png | Bin .../src/main/webapp/images/iconCluster.png | Bin .../main/webapp/images/iconClusterSmall.png | Bin .../webapp/images/iconCollapseChildren.png | Bin .../webapp/images/iconCollapseParents.png | Bin .../src/main/webapp/images/iconColor.png | Bin .../src/main/webapp/images/iconCommit.png | Bin .../src/main/webapp/images/iconConfigure.png | Bin .../src/main/webapp/images/iconConnect.png | Bin .../src/main/webapp/images/iconConnection.png | Bin .../src/main/webapp/images/iconCopy.png | Bin .../src/main/webapp/images/iconCounter.png | Bin .../src/main/webapp/images/iconDelete.png | Bin .../src/main/webapp/images/iconDetails.png | Bin .../src/main/webapp/images/iconDisable.png | Bin .../src/main/webapp/images/iconDisconnect.png | Bin .../src/main/webapp/images/iconEdit.png | Bin .../src/main/webapp/images/iconEditButton.png | Bin .../main/webapp/images/iconExpandChildren.png | Bin .../main/webapp/images/iconExpandParents.png | Bin .../src/main/webapp/images/iconExport.png | Bin .../main/webapp/images/iconExportLineage.png | Bin .../main/webapp/images/iconFlowSettings.png | Bin .../src/main/webapp/images/iconFunnel.png | Bin .../src/main/webapp/images/iconGoTo.png | Bin .../src/main/webapp/images/iconHistory.png | Bin .../src/main/webapp/images/iconInfo.png | Bin .../src/main/webapp/images/iconInputPort.png | Bin .../main/webapp/images/iconInputPortSmall.png | Bin .../webapp/images/iconIsolatedProcessor.png | Bin .../src/main/webapp/images/iconLineage.png | Bin .../src/main/webapp/images/iconLoading.gif | Bin .../src/main/webapp/images/iconNotSecure.png | Bin .../src/main/webapp/images/iconOutputPort.png | Bin .../webapp/images/iconOutputPortSmall.png | Bin .../src/main/webapp/images/iconPaste.png | Bin .../src/main/webapp/images/iconPopOut.png | Bin .../webapp/images/iconPortNotTransmitting.png | Bin .../main/webapp/images/iconPortRemoved.png | Bin .../webapp/images/iconPortTransmitting.png | Bin .../src/main/webapp/images/iconPrimary.png | Bin .../src/main/webapp/images/iconProcessor.png | Bin .../src/main/webapp/images/iconProvenance.png | Bin .../src/main/webapp/images/iconRefresh.png | Bin .../main/webapp/images/iconRemotePorts.png | Bin .../webapp/images/iconRemoteProcessGroup.png | Bin .../src/main/webapp/images/iconReporting.png | Bin .../main/webapp/images/iconResetCounter.png | Bin .../src/main/webapp/images/iconResize.png | Bin .../src/main/webapp/images/iconRevoke.png | Bin .../src/main/webapp/images/iconRun.png | Bin .../src/main/webapp/images/iconSecure.png | Bin .../main/webapp/images/iconSmallFunnel.png | Bin .../main/webapp/images/iconSmallInputPort.png | Bin .../webapp/images/iconSmallOutputPort.png | Bin .../webapp/images/iconSmallProcessGroup.png | Bin .../main/webapp/images/iconSmallProcessor.png | Bin .../webapp/images/iconSmallRelationship.png | Bin .../images/iconSmallRemoteProcessGroup.png | Bin .../src/main/webapp/images/iconStop.png | Bin .../src/main/webapp/images/iconTemplates.png | Bin .../src/main/webapp/images/iconToFront.png | Bin .../webapp/images/iconTransmissionActive.png | Bin .../images/iconTransmissionInactive.png | Bin .../src/main/webapp/images/iconTwistArrow.png | Bin .../src/main/webapp/images/iconUndo.png | Bin .../src/main/webapp/images/iconUsage.png | Bin .../src/main/webapp/images/inputCheckbox.png | Bin .../src/main/webapp/images/loadAnimation.gif | Bin .../src/main/webapp/images/nifi16.ico | Bin .../src/main/webapp/images/nifi_about.png | Bin .../src/main/webapp/images/panelBg.jpg | Bin .../src/main/webapp/images/portRemoved.png | Bin .../src/main/webapp/images/portRunning.png | Bin .../src/main/webapp/images/portStopped.png | Bin .../src/main/webapp/images/spacer.png | Bin .../src/main/webapp/images/starburst.png | Bin .../src/main/webapp/images/tabBg.jpg | Bin .../src/main/webapp/images/toolbarBg.gif | Bin .../main/webapp/images/toolboxIconFunnel.png | Bin .../webapp/images/toolboxIconInputPort.png | Bin .../main/webapp/images/toolboxIconLabel.png | Bin .../webapp/images/toolboxIconOutputPort.png | Bin .../webapp/images/toolboxIconProcessGroup.png | Bin .../webapp/images/toolboxIconProcessor.png | Bin .../images/toolboxIconRemoteProcessGroup.png | Bin .../webapp/images/toolboxIconTemplate.png | Bin .../images/transmissionSwitchDisabled.png | Bin .../images/transmissionSwitchEnabled.png | Bin .../src/main/webapp/images/ungroup.png | Bin .../src/main/webapp/js/codemirror/LICENSE | 0 .../js/codemirror/addon/hint/show-hint.css | 0 .../codemirror/lib/codemirror-compressed.js | 0 .../webapp/js/codemirror/lib/codemirror.css | 0 .../nifi-web-ui/src/main/webapp/js/d3/LICENSE | 0 .../src/main/webapp/js/d3/d3.min.js | 0 .../webapp/js/jquery/combo/jquery.combo.css | 0 .../webapp/js/jquery/combo/jquery.combo.js | 0 .../main/webapp/js/jquery/combo/menuArrow.png | Bin .../webapp/js/jquery/combo/menuArrowSmall.png | Bin .../main/webapp/js/jquery/jquery-2.1.1.min.js | 0 .../main/webapp/js/jquery/jquery.center.js | 0 .../src/main/webapp/js/jquery/jquery.count.js | 0 .../src/main/webapp/js/jquery/jquery.each.js | 0 .../main/webapp/js/jquery/jquery.ellipsis.js | 0 .../js/jquery/jquery.event.drag-2.2.min.js | 0 .../main/webapp/js/jquery/jquery.form.min.js | 0 .../src/main/webapp/js/jquery/jquery.tab.js | 0 .../jquery/minicolors/jquery.minicolors.css | 0 .../minicolors/jquery.minicolors.min.js | 0 .../jquery/minicolors/jquery.minicolors.png | Bin .../webapp/js/jquery/modal/jquery.modal.css | 0 .../webapp/js/jquery/modal/jquery.modal.js | 0 .../js/jquery/nfeditor/jquery.nfeditor.css | 0 .../js/jquery/nfeditor/jquery.nfeditor.js | 0 .../js/jquery/nfeditor/languages/nfel.css | 0 .../js/jquery/nfeditor/languages/nfel.js | 0 .../js/jquery/qtip2/jquery.qtip.min.css | 0 .../webapp/js/jquery/qtip2/jquery.qtip.min.js | 0 .../js/jquery/slickgrid/MIT-LICENSE.txt | 0 .../jquery/slickgrid/css/images/collapse.gif | Bin .../js/jquery/slickgrid/css/images/expand.gif | Bin .../jquery/slickgrid/css/images/sort-asc.gif | Bin .../jquery/slickgrid/css/images/sort-desc.gif | Bin .../slickgrid/css/slick-default-theme.css | 0 .../js/jquery/slickgrid/css/slick.grid.css | 0 .../slickgrid/plugins/slick.autotooltips.js | 0 .../plugins/slick.cellrangedecorator.js | 0 .../plugins/slick.cellrangeselector.js | 0 .../plugins/slick.cellselectionmodel.js | 0 .../plugins/slick.rowselectionmodel.js | 0 .../webapp/js/jquery/slickgrid/slick.core.js | 0 .../js/jquery/slickgrid/slick.dataview.js | 0 .../js/jquery/slickgrid/slick.editors.js | 0 .../js/jquery/slickgrid/slick.formatters.js | 0 .../webapp/js/jquery/slickgrid/slick.grid.js | 0 .../webapp/js/jquery/tabbs/jquery.tabbs.css | 0 .../webapp/js/jquery/tabbs/jquery.tabbs.js | 0 .../ui-smoothness/images/animated-overlay.gif | Bin .../images/ui-bg_flat_0_aaaaaa_40x100.png | Bin .../images/ui-bg_flat_75_ffffff_40x100.png | Bin .../images/ui-bg_glass_55_fbf9ee_1x400.png | Bin .../images/ui-bg_glass_65_ffffff_1x400.png | Bin .../images/ui-bg_glass_75_dadada_1x400.png | Bin .../images/ui-bg_glass_75_e6e6e6_1x400.png | Bin .../images/ui-bg_glass_95_fef1ec_1x400.png | Bin .../ui-bg_highlight-soft_75_cccccc_1x100.png | Bin .../images/ui-icons_222222_256x240.png | Bin .../images/ui-icons_2e83ff_256x240.png | Bin .../images/ui-icons_454545_256x240.png | Bin .../images/ui-icons_888888_256x240.png | Bin .../images/ui-icons_cd0a0a_256x240.png | Bin .../ui-smoothness/jquery-ui-1.10.4.min.css | 0 .../ui-smoothness/jquery-ui-1.10.4.min.js | 0 .../nifi-web-ui/src/main/webapp/js/json2.js | 0 .../js/nf/bulletin-board/nf-bulletin-board.js | 0 .../main/webapp/js/nf/canvas/nf-actions.js | 0 .../main/webapp/js/nf/canvas/nf-birdseye.js | 0 .../webapp/js/nf/canvas/nf-canvas-header.js | 0 .../webapp/js/nf/canvas/nf-canvas-toolbar.js | 0 .../webapp/js/nf/canvas/nf-canvas-toolbox.js | 0 .../webapp/js/nf/canvas/nf-canvas-utils.js | 0 .../src/main/webapp/js/nf/canvas/nf-canvas.js | 0 .../main/webapp/js/nf/canvas/nf-clipboard.js | 0 .../webapp/js/nf/canvas/nf-connectable.js | 0 .../nf/canvas/nf-connection-configuration.js | 0 .../main/webapp/js/nf/canvas/nf-connection.js | 0 .../webapp/js/nf/canvas/nf-context-menu.js | 0 .../js/nf/canvas/nf-custom-processor-ui.js | 0 .../main/webapp/js/nf/canvas/nf-draggable.js | 0 .../src/main/webapp/js/nf/canvas/nf-funnel.js | 0 .../src/main/webapp/js/nf/canvas/nf-go-to.js | 0 .../webapp/js/nf/canvas/nf-graph-control.js | 0 .../src/main/webapp/js/nf/canvas/nf-graph.js | 0 .../js/nf/canvas/nf-label-configuration.js | 0 .../src/main/webapp/js/nf/canvas/nf-label.js | 0 .../js/nf/canvas/nf-port-configuration.js | 0 .../webapp/js/nf/canvas/nf-port-details.js | 0 .../src/main/webapp/js/nf/canvas/nf-port.js | 0 .../canvas/nf-process-group-configuration.js | 0 .../js/nf/canvas/nf-process-group-details.js | 0 .../webapp/js/nf/canvas/nf-process-group.js | 0 .../nf/canvas/nf-processor-configuration.js | 0 .../nf-processor-property-combo-editor.js | 0 .../nf-processor-property-nfel-editor.js | 0 .../nf/canvas/nf-processor-property-table.js | 0 .../nf-processor-property-text-editor.js | 0 .../main/webapp/js/nf/canvas/nf-processor.js | 0 .../webapp/js/nf/canvas/nf-registration.js | 0 .../nf-remote-process-group-configuration.js | 0 .../canvas/nf-remote-process-group-details.js | 0 .../canvas/nf-remote-process-group-ports.js | 0 .../js/nf/canvas/nf-remote-process-group.js | 0 .../src/main/webapp/js/nf/canvas/nf-search.js | 0 .../nf/canvas/nf-secure-port-configuration.js | 0 .../js/nf/canvas/nf-secure-port-details.js | 0 .../main/webapp/js/nf/canvas/nf-selectable.js | 0 .../main/webapp/js/nf/canvas/nf-settings.js | 0 .../main/webapp/js/nf/canvas/nf-snippet.js | 0 .../main/webapp/js/nf/canvas/nf-storage.js | 0 .../webapp/js/nf/canvas/nf-toolbar-action.js | 0 .../webapp/js/nf/cluster/nf-cluster-table.js | 0 .../main/webapp/js/nf/cluster/nf-cluster.js | 0 .../js/nf/counters/nf-counters-table.js | 0 .../main/webapp/js/nf/counters/nf-counters.js | 0 .../webapp/js/nf/history/nf-history-model.js | 0 .../webapp/js/nf/history/nf-history-table.js | 0 .../main/webapp/js/nf/history/nf-history.js | 0 .../src/main/webapp/js/nf/nf-client.js | 0 .../src/main/webapp/js/nf/nf-common.js | 0 .../webapp/js/nf/nf-connection-details.js | 0 .../src/main/webapp/js/nf/nf-dialog.js | 0 .../src/main/webapp/js/nf/nf-namespace.js | 0 .../main/webapp/js/nf/nf-processor-details.js | 0 .../src/main/webapp/js/nf/nf-shell.js | 0 .../main/webapp/js/nf/nf-status-history.js | 0 .../js/nf/provenance/nf-provenance-lineage.js | 0 .../js/nf/provenance/nf-provenance-table.js | 0 .../webapp/js/nf/provenance/nf-provenance.js | 0 .../webapp/js/nf/summary/nf-cluster-search.js | 0 .../webapp/js/nf/summary/nf-summary-table.js | 0 .../main/webapp/js/nf/summary/nf-summary.js | 0 .../js/nf/templates/nf-templates-table.js | 0 .../webapp/js/nf/templates/nf-templates.js | 0 .../main/webapp/js/nf/users/nf-users-table.js | 0 .../src/main/webapp/js/nf/users/nf-users.js | 0 .../nifi-framework/nifi-web}/pom.xml | 31 +- .../nifi-framework}/pom.xml | 35 +- .../nifi-framework-bundle}/pom.xml | 36 +- .../nifi-hadoop-nar}/pom.xml | 13 +- .../nifi-hdfs-processors}/pom.xml | 10 +- .../hadoop/AbstractHadoopProcessor.java | 0 .../hadoop/CreateHadoopSequenceFile.java | 0 ...wFileStreamUnpackerSequenceFileWriter.java | 0 .../nifi/processors/hadoop/GetHDFS.java | 0 .../hadoop/GetHDFSSequenceFile.java | 0 .../processors/hadoop/KeyValueReader.java | 0 .../nifi/processors/hadoop/PutHDFS.java | 0 .../hadoop/SequenceFileWriterImpl.java | 0 .../hadoop/TarUnpackerSequenceFileWriter.java | 0 .../nifi/processors/hadoop/ValueReader.java | 0 .../hadoop/ZipUnpackerSequenceFileWriter.java | 0 .../util/ByteFilteringOutputStream.java | 0 .../hadoop/util/InputStreamWritable.java | 0 .../hadoop/util/OutputStreamWritable.java | 0 .../hadoop/util/SequenceFileReader.java | 0 .../hadoop/util/SequenceFileWriter.java | 0 .../org.apache.nifi.processor.Processor | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../processors/hadoop/AbstractHadoopTest.java | 0 .../nifi/processors/hadoop/GetHDFSTest.java | 0 .../nifi/processors/hadoop/PutHDFSTest.java | 0 .../hadoop/SimpleHadoopProcessor.java | 0 .../hadoop/TestCreateHadoopSequenceFile.java | 0 .../src/test/resources/core-site-broken.xml | 0 .../src/test/resources/core-site.xml | 0 .../resources/testdata/13545312236534130.tar | Bin .../resources/testdata/13545423550275052.zip | Bin .../resources/testdata/13545479542069498.pkg | Bin .../src/test/resources/testdata/randombytes-1 | Bin .../src/test/resources/testdata/randombytes-2 | Bin .../src/test/resources/testdata/randombytes-3 | Bin .../nifi-hadoop-bundle}/pom.xml | 17 +- .../nifi-hadoop-libraries-nar}/pom.xml | 11 +- .../nifi-hadoop-libraries-bundle}/pom.xml | 12 +- .../nifi-jetty-bundle}/pom.xml | 5 +- .../nifi-kafka-bundle/nifi-kafka-nar}/pom.xml | 11 +- .../nifi-kafka-processors}/pom.xml | 45 +- .../nifi/processors/kafka/GetKafka.java | 0 .../nifi/processors/kafka/PutKafka.java | 0 .../org.apache.nifi.processor.Processor | 0 .../index.html | 0 .../index.html | 0 .../nifi/processors/kafka/TestGetKafka.java | 0 .../nifi/processors/kafka/TestPutKafka.java | 0 .../nifi-kafka-bundle}/pom.xml | 31 +- .../pom.xml | 10 +- .../nifi/provenance/IndexConfiguration.java | 0 .../PersistentProvenanceRepository.java | 0 .../provenance/RepositoryConfiguration.java | 0 .../nifi/provenance/StandardRecordReader.java | 0 .../nifi/provenance/StandardRecordWriter.java | 0 .../expiration/ExpirationAction.java | 0 .../expiration/FileRemovalAction.java | 0 .../provenance/lucene/DeleteIndexAction.java | 0 .../nifi/provenance/lucene/DocsReader.java | 0 .../nifi/provenance/lucene/FieldNames.java | 0 .../nifi/provenance/lucene/IndexSearch.java | 0 .../provenance/lucene/IndexingAction.java | 0 .../nifi/provenance/lucene/LineageQuery.java | 0 .../nifi/provenance/lucene/LuceneUtil.java | 0 .../rollover/CompressionAction.java | 0 .../provenance/rollover/RolloverAction.java | 0 .../serialization/RecordReader.java | 0 .../serialization/RecordReaders.java | 0 .../serialization/RecordWriter.java | 0 .../serialization/RecordWriters.java | 0 ....nifi.provenance.ProvenanceEventRepository | 0 .../TestPersistentProvenanceRepository.java | 0 .../nifi-provenance-repository-nar/pom.xml | 35 + .../pom.xml | 11 +- .../VolatileProvenanceRepository.java | 0 ....nifi.provenance.ProvenanceEventRepository | 0 .../TestVolatileProvenanceRepository.java | 0 .../src/test/resources/nifi.properties | 0 .../pom.xml | 23 +- .../nifi-standard-nar}/pom.xml | 20 +- .../nifi-standard-prioritizers}/pom.xml | 6 +- .../FirstInFirstOutPrioritizer.java | 0 .../NewestFlowFileFirstPrioritizer.java | 0 .../OldestFlowFileFirstPrioritizer.java | 0 .../PriorityAttributePrioritizer.java | 0 ...g.apache.nifi.flowfile.FlowFilePrioritizer | 0 .../NewestFirstPrioritizerTest.java | 0 .../OldestFirstPrioritizerTest.java | 0 .../PriorityAttributePrioritizerTest.java | 0 .../nifi-standard-processors}/pom.xml | 25 +- .../standard/Base64EncodeContent.java | 0 .../processors/standard/CompressContent.java | 0 .../nifi/processors/standard/ControlRate.java | 0 .../standard/ConvertCharacterSet.java | 0 .../processors/standard/DetectDuplicate.java | 0 .../processors/standard/DistributeLoad.java | 0 .../processors/standard/EncryptContent.java | 0 .../standard/EvaluateRegularExpression.java | 0 .../processors/standard/EvaluateXPath.java | 0 .../processors/standard/EvaluateXQuery.java | 0 .../standard/ExecuteStreamCommand.java | 0 .../processors/standard/GenerateFlowFile.java | 0 .../nifi/processors/standard/GetFTP.java | 0 .../nifi/processors/standard/GetFile.java | 0 .../processors/standard/GetFileTransfer.java | 0 .../nifi/processors/standard/GetHTTP.java | 0 .../processors/standard}/GetJMSQueue.java | 6 +- .../processors/standard}/GetJMSTopic.java | 20 +- .../nifi/processors/standard/GetSFTP.java | 0 .../processors/standard/HashAttribute.java | 0 .../nifi/processors/standard/HashContent.java | 0 .../processors/standard/IdentifyMimeType.java | 0 .../nifi/processors/standard/InvokeHTTP.java | 0 .../processors/standard}/JmsConsumer.java | 30 +- .../nifi/processors/standard/ListenHTTP.java | 0 .../nifi/processors/standard/ListenUDP.java | 0 .../processors/standard/LogAttribute.java | 0 .../processors/standard/MergeContent.java | 0 .../nifi/processors/standard/ModifyBytes.java | 0 .../processors/standard/MonitorActivity.java | 0 .../nifi/processors/standard/PostHTTP.java | 0 .../nifi/processors/standard/PutEmail.java | 0 .../nifi/processors/standard/PutFTP.java | 0 .../nifi/processors/standard/PutFile.java | 0 .../processors/standard/PutFileTransfer.java | 0 .../nifi/processors/standard}/PutJMS.java | 66 +- .../nifi/processors/standard/PutSFTP.java | 0 .../nifi/processors/standard/ReplaceText.java | 0 .../standard/ReplaceTextWithMapping.java | 0 .../processors/standard/RouteOnAttribute.java | 0 .../processors/standard/RouteOnContent.java | 0 .../processors/standard/ScanAttribute.java | 0 .../nifi/processors/standard/ScanContent.java | 0 .../processors/standard/SegmentContent.java | 0 .../processors/standard/SplitContent.java | 0 .../nifi/processors/standard/SplitText.java | 0 .../nifi/processors/standard/SplitXml.java | 0 .../processors/standard/TransformXml.java | 0 .../processors/standard/UnpackContent.java | 0 .../nifi/processors/standard/ValidateXml.java | 0 .../ContentAcknowledgmentServlet.java | 0 .../standard/servlets/ListenHTTPServlet.java | 0 .../nifi/processors/standard/util/Bin.java | 0 .../processors/standard/util/BinManager.java | 0 .../standard/util/DocumentReaderCallback.java | 0 .../processors/standard/util/FTPTransfer.java | 0 .../processors/standard/util/FTPUtils.java | 0 .../processors/standard/util/FileInfo.java | 0 .../standard/util/FileTransfer.java | 0 .../standard/util/FlowFileSessionWrapper.java | 0 .../processors/standard}/util/JmsFactory.java | 32 +- .../standard}/util/JmsProperties.java | 2 +- .../standard/util/NLKBufferedReader.java | 0 .../standard/util/SFTPConnection.java | 0 .../standard/util/SFTPTransfer.java | 0 .../processors/standard/util/SFTPUtils.java | 0 .../standard/util/UDPStreamConsumer.java | 0 .../util/ValidatingBase64InputStream.java | 0 .../util/WrappedMessageConsumer.java | 2 +- .../util/WrappedMessageProducer.java | 2 +- .../standard/util/XmlElementNotifier.java | 0 .../standard/util/XmlSplitterSaxParser.java | 0 .../org.apache.nifi.processor.Processor | 5 +- .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../src/test/java/TestIngestAndUpdate.java | 0 .../src/test/java/TestSuccess.java | 0 .../standard/HelloWorldServlet.java | 0 .../standard/RESTServiceContentModified.java | 0 .../standard/TestBase64EncodeContent.java | 0 .../standard/TestCompressContent.java | 0 .../processors/standard/TestControlRate.java | 0 .../standard/TestConvertCharacterSet.java | 0 .../standard/TestDetectDuplicate.java | 0 .../standard/TestDistributeLoad.java | 0 .../standard/TestEncryptContent.java | 0 .../TestEvaluateRegularExpression.java | 0 .../standard/TestEvaluateXPath.java | 0 .../standard/TestEvaluateXQuery.java | 0 .../standard/TestExecuteStreamCommand.java | 8 +- .../nifi/processors/standard/TestGetFile.java | 0 .../nifi/processors/standard/TestGetHTTP.java | 0 .../processors/standard/TestGetJMSQueue.java} | 11 +- .../standard/TestHashAttribute.java | 0 .../processors/standard/TestHashContent.java | 0 .../standard/TestIdentifyMimeType.java | 0 .../processors/standard/TestInvokeHTTP.java | 0 .../processors/standard/TestListenUDP.java | 0 .../processors/standard/TestMergeContent.java | 0 .../processors/standard/TestModifyBytes.java | 0 .../standard/TestMonitorActivity.java | 0 .../processors/standard/TestReplaceText.java | 0 .../standard/TestReplaceTextLineByLine.java | 0 .../standard/TestReplaceTextWithMapping.java | 0 .../standard/TestRouteOnAttribute.java | 0 .../standard/TestRouteOnContent.java | 0 .../standard/TestScanAttribute.java | 0 .../processors/standard/TestScanContent.java | 0 .../standard/TestSegmentContent.java | 0 .../nifi/processors/standard/TestServer.java | 0 .../processors/standard/TestSplitContent.java | 0 .../processors/standard/TestSplitText.java | 0 .../processors/standard/TestSplitXml.java | 0 .../processors/standard/TestTransformXml.java | 0 .../standard/TestUnpackContent.java | 0 .../processors/standard/TestValidateXml.java | 0 .../standard/UserAgentTestingServlet.java | 0 .../Converted.txt | 0 .../Converted2.txt | Bin .../Original.txt | 0 .../resources/CompressedData/SampleFile.txt | 0 .../CompressedData/SampleFile.txt.bz2 | Bin .../CompressedData/SampleFile.txt.gz | Bin .../CompressedData/SampleFile1.txt.bz2 | Bin .../CompressedData/SampleFile1.txt.gz | Bin .../CompressedData/SampleFileConcat.txt | 0 .../CompressedData/SampleFileConcat.txt.bz2 | Bin .../resources/ExecuteCommand/1000bytes.txt | 0 .../ExecuteCommand/TestIngestAndUpdate.jar | Bin .../resources/ExecuteCommand/TestSuccess.jar | Bin .../test/resources/ExecuteCommand/test.txt | 0 .../dictionary-with-empty-new-lines | 0 .../ScanAttribute/dictionary-with-extra-info | 0 .../test/resources/ScanAttribute/dictionary1 | 0 .../test/resources/TestIdentifyMimeType/1.7z | Bin .../test/resources/TestIdentifyMimeType/1.jar | Bin .../test/resources/TestIdentifyMimeType/1.mdb | Bin .../test/resources/TestIdentifyMimeType/1.pdf | Bin .../test/resources/TestIdentifyMimeType/1.tar | Bin .../resources/TestIdentifyMimeType/1.txt.bz2 | Bin .../resources/TestIdentifyMimeType/1.txt.gz | Bin .../test/resources/TestIdentifyMimeType/1.xml | 0 .../test/resources/TestIdentifyMimeType/1.zip | Bin .../TestIdentifyMimeType/bgBannerFoot.png | Bin .../TestIdentifyMimeType/blueBtnBg.jpg | Bin .../TestIdentifyMimeType/flowfilev1.tar | Bin .../resources/TestIdentifyMimeType/flowfilev3 | Bin .../resources/TestIdentifyMimeType/grid.gif | Bin .../test/resources/TestMergeContent/demarcate | 0 .../src/test/resources/TestMergeContent/foot | 0 .../src/test/resources/TestMergeContent/head | 0 .../resources/TestModifyBytes/noFooter.txt | 0 .../TestModifyBytes/noFooter_noHeader.txt | 0 .../resources/TestModifyBytes/noHeader.txt | 0 .../resources/TestModifyBytes/testFile.txt | 0 .../TestReplaceTextLineByLine/$1$1.txt | 0 .../BRue_cRue_RiRey.txt | 0 .../Blu$2e_clu$2e.txt | 0 .../TestReplaceTextLineByLine/D$d_h$d.txt | 0 .../TestReplaceTextLineByLine/Good.txt | 0 .../TestReplaceTextLineByLine/Spider.txt | 0 .../TestReplaceTextLineByLine/[DODO].txt | 0 .../cu[$1]_Po[$1].txt | 0 .../TestReplaceTextLineByLine/cu_Po.txt | 0 .../TestReplaceTextLineByLine/food.txt | 0 .../TestReplaceTextLineByLine/testFile.txt | 0 .../color-fruit-backreference-mapping.txt | 0 .../color-fruit-blank-mapping.txt | 0 .../color-fruit-escaped-dollar-mapping.txt | 0 ...excessive-backreference-mapping-simple.txt | 0 ...-fruit-excessive-backreference-mapping.txt | 0 ...or-fruit-invalid-backreference-mapping.txt | 0 .../color-fruit-mapping.txt | 0 .../color-fruit-no-match-mapping.txt | 0 .../color-fruit-space-mapping.txt | 0 .../colors-without-dashes.txt | 0 .../TestReplaceTextWithMapping/colors.txt | 0 .../test/resources/TestScanContent/helloWorld | 0 .../TestScanContent/wellthengood-bye | 0 .../src/test/resources/TestSplitText/1.txt | 0 .../src/test/resources/TestSplitText/2.txt | 0 .../src/test/resources/TestSplitText/3.txt | 0 .../src/test/resources/TestSplitText/4.txt | 0 .../src/test/resources/TestSplitText/5.txt | 0 .../src/test/resources/TestSplitText/6.txt | 0 .../test/resources/TestSplitText/original.txt | 0 .../test/resources/TestTransformXml/math.html | 0 .../test/resources/TestTransformXml/math.xml | 0 .../test/resources/TestTransformXml/math.xsl | 0 .../resources/TestTransformXml/tokens.csv | 0 .../resources/TestTransformXml/tokens.xml | 0 .../resources/TestTransformXml/tokens.xsl | 0 .../TestUnpackContent/data.flowfilev2 | Bin .../TestUnpackContent/data.flowfilev3 | Bin .../test/resources/TestUnpackContent/data.tar | Bin .../test/resources/TestUnpackContent/data.zip | Bin .../TestUnpackContent/folder/cal.txt | 0 .../TestUnpackContent/folder/date.txt | 0 .../src/test/resources/TestXml/XmlBundle.xsd | 0 .../src/test/resources/TestXml/fruit.xml | 0 .../src/test/resources/TestXml/subNode.xml | 0 .../src/test/resources/TestXml/xml-bundle-1 | 0 .../test/resources/TestXml/xml-snippet.xml | 0 .../src/test/resources/hello.txt | 0 .../src/test/resources/localhost-ks.jks | Bin .../src/test/resources/localhost-ts.jks | Bin .../src/test/resources/localhost.cer | Bin .../src/test/resources/logback-test.xml | 0 .../nifi-standard-reporting-tasks}/pom.xml | 10 +- .../ControllerStatusReportingTask.java | 0 .../nifi/controller/MonitorDiskUsage.java | 0 .../apache/nifi/controller/MonitorMemory.java | 0 .../ganglia/StandardGangliaReporter.java | 0 .../org.apache.nifi.reporting.ReportingTask | 3 +- .../index.html | 0 .../index.html | 0 .../index.html | 0 .../index.html | 0 .../nifi/controller/TestMonitorDiskUsage.java | 0 .../nifi-standard-bundle}/pom.xml | 34 +- .../pom.xml | 9 +- .../cache/client/Deserializer.java | 0 .../client/DistributedMapCacheClient.java | 0 .../client/DistributedSetCacheClient.java | 0 .../distributed/cache/client/Serializer.java | 0 .../exception/DeserializationException.java | 0 .../exception/SerializationException.java | 0 .../pom.xml | 15 +- .../cache/client/CommsSession.java | 0 .../DistributedMapCacheClientService.java | 0 .../DistributedSetCacheClientService.java | 0 .../cache/client/SSLCommsSession.java | 0 .../cache/client/StandardCommsSession.java | 0 ...g.apache.nifi.controller.ControllerService | 0 .../index.html | 0 .../index.html | 0 .../nifi-distributed-cache-protocol}/pom.xml | 12 +- .../cache/protocol/ProtocolHandshake.java | 0 .../exception/HandshakeException.java | 0 .../nifi-distributed-cache-server}/pom.xml | 23 +- .../cache/server/AbstractCacheServer.java | 0 .../distributed/cache/server/CacheRecord.java | 0 .../distributed/cache/server/CacheServer.java | 0 .../cache/server/DistributedCacheServer.java | 0 .../server/DistributedSetCacheServer.java | 0 .../cache/server/EvictionPolicy.java | 0 .../cache/server/SetCacheServer.java | 0 .../server/map/DistributedMapCacheServer.java | 0 .../cache/server/map/MapCache.java | 0 .../cache/server/map/MapCacheRecord.java | 0 .../cache/server/map/MapCacheServer.java | 0 .../cache/server/map/MapPutResult.java | 0 .../cache/server/map/PersistentMapCache.java | 0 .../cache/server/map/SimpleMapCache.java | 0 .../cache/server/set/PersistentSetCache.java | 0 .../cache/server/set/SetCache.java | 0 .../cache/server/set/SetCacheRecord.java | 0 .../cache/server/set/SetCacheResult.java | 0 .../cache/server/set/SimpleSetCache.java | 0 ...g.apache.nifi.controller.ControllerService | 0 .../index.html | 0 .../cache/server/TestServerAndClient.java | 0 .../src/test/resources/localhost-ks.jks | Bin .../src/test/resources/localhost-ts.jks | Bin .../pom.xml | 15 +- .../pom.xml | 18 +- .../pom.xml | 10 +- .../loading/LoadDistributionListener.java | 0 .../nifi/loading/LoadDistributionService.java | 0 .../nifi-ssl-context-nar}/pom.xml | 13 +- .../nifi-ssl-context-service}/pom.xml | 11 +- .../nifi/ssl/StandardSSLContextService.java | 0 ...g.apache.nifi.controller.ControllerService | 0 .../index.html | 0 .../nifi/ssl/SSLContextServiceTest.java | 0 .../org/apache/nifi/ssl/TestProcessor.java | 0 .../src/test/resources/localhost-ks.jks | Bin .../src/test/resources/localhost-ts.jks | Bin .../nifi-ssl-context-bundle}/pom.xml | 15 +- .../nifi-ssl-context-service-api}/pom.xml | 10 +- .../apache/nifi/ssl/SSLContextService.java | 0 .../nifi-standard-services-api-nar}/pom.xml | 13 +- .../nifi-standard-services}/pom.xml | 21 +- .../nifi-update-attribute-model}/pom.xml | 5 +- .../apache/nifi/update/attributes/Action.java | 0 .../nifi/update/attributes/Condition.java | 0 .../nifi/update/attributes/Criteria.java | 0 .../update/attributes/FlowFilePolicy.java | 0 .../apache/nifi/update/attributes/Rule.java | 0 .../attributes/serde/CriteriaSerDe.java | 0 .../nifi-update-attribute-nar}/pom.xml | 13 +- .../nifi-update-attribute-processor}/pom.xml | 7 +- .../attributes/UpdateAttribute.java | 0 .../org.apache.nifi.processor.Processor | 0 .../index.html | 0 .../attributes/TestUpdateAttribute.java | 0 .../nb-configuration.xml | 0 .../nifi-update-attribute-ui}/pom.xml | 9 +- .../UpdateAttributeModelFactory.java | 0 .../attributes/api/ObjectMapperResolver.java | 0 .../update/attributes/api/RuleResource.java | 0 .../nifi/update/attributes/dto/ActionDTO.java | 0 .../update/attributes/dto/ConditionDTO.java | 0 .../update/attributes/dto/DtoFactory.java | 0 .../nifi/update/attributes/dto/RuleDTO.java | 0 .../attributes/entity/ActionEntity.java | 0 .../attributes/entity/ConditionEntity.java | 0 .../entity/EvaluationContextEntity.java | 0 .../update/attributes/entity/RuleEntity.java | 0 .../update/attributes/entity/RulesEntity.java | 0 .../src/main/webapp/META-INF/nifi-processor | 0 .../src/main/webapp/WEB-INF/jsp/worksheet.jsp | 0 .../src/main/webapp/WEB-INF/web.xml | 0 .../src/main/webapp/css/main.css | 0 .../src/main/webapp/images/bgInputText.png | Bin .../src/main/webapp/images/buttonNew.png | Bin .../src/main/webapp/images/iconDelete.png | Bin .../src/main/webapp/images/iconInfo.png | Bin .../src/main/webapp/js/application.js | 0 .../nifi-update-attribute-bundle}/pom.xml | 19 +- .../{nar-bundles => nifi-nar-bundles}/pom.xml | 43 +- nifi/pom.xml | 51 +- 2149 files changed, 544 insertions(+), 8473 deletions(-) rename {nar-maven-plugin => nifi-nar-maven-plugin}/DISCLAIMER (100%) rename {nar-maven-plugin => nifi-nar-maven-plugin}/LICENSE (100%) rename {nar-maven-plugin => nifi-nar-maven-plugin}/NOTICE (100%) rename {nar-maven-plugin => nifi-nar-maven-plugin}/README.md (100%) rename {nar-maven-plugin => nifi-nar-maven-plugin}/pom.xml (98%) rename {nar-maven-plugin/src/main/java => nifi-nar-maven-plugin/src/main/java/org/apache}/nifi/NarMojo.java (99%) rename {nar-maven-plugin => nifi-nar-maven-plugin}/src/main/resources/META-INF/plexus/components.xml (96%) delete mode 100644 nifi/nar-bundles/kafka-bundle/kafka-processors/pom.xml delete mode 100644 nifi/nar-bundles/kafka-bundle/pom.xml delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/nar/pom.xml delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/processor/pom.xml delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/processor/src/main/java/org/apache/nifi/processors/monitor/MonitorThreshold.java delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/processor/src/main/java/org/apache/nifi/processors/monitor/ThresholdsParser.java delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/processor/src/main/resources/META-INF/services/org.apache.nifi.processor.Processor delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/processor/src/main/resources/docs/org.apache.nifi.processors.monitor.MonitorThreshold/index.html delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/java/org/apache/nifi/processors/monitor/TestMonitorThreshold.java delete mode 100755 nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/testFile delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_0.xml delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_1.xml delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_10_KB.xml delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_10_KB_and_2_KB.xml delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_1669_bytes.xml delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_2.xml delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_2_default.xml delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_3336_bytes_default.xml delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_with_empty_attribute_value.xml delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_with_spaces_for_attribute_values.xml delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/pom.xml delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/AttributeComparator.java delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/AttributeResource.java delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/RuleComparator.java delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/ThresholdResource.java delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/ThresholdSettingsResource.java delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/ThresholdsConfigFile.java delete mode 100755 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/META-INF/nifi-processor delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/attribute-add-dialog.jsp delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/attribute-confirm-dialog.jsp delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/attribute-edit-dialog.jsp delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/attribute-filter-dialog.jsp delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/error-dialog.jsp delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/index.jsp delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-add-dialog.jsp delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-confirm-dialog.jsp delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-dialog.jsp delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-edit-dialog.jsp delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-filter-dialog.jsp delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/web.xml delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/css/threshold_styles.css delete mode 100755 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/addWorksheetRow.png delete mode 100755 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/clear.png delete mode 100755 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/filter.gif delete mode 100755 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/firstPage.gif delete mode 100755 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/firstPageDisabled.gif delete mode 100755 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/lastPage.gif delete mode 100755 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/lastPageDisabled.gif delete mode 100755 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/nextPage.gif delete mode 100755 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/nextPageDisabled.gif delete mode 100755 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/prevPage.gif delete mode 100755 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/prevPageDisabled.gif delete mode 100755 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/removeWorksheetRow.png delete mode 100755 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/separator.gif delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/js/jquery/jqgrid/css/ui.jqgrid.css delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/js/jquery/jqgrid/js/i18n/grid.locale-en.js delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/js/jquery/jqgrid/js/jquery.jqGrid.min.js delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/js/nf-common.js delete mode 100644 nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/xsd/threshold_settings.xsd delete mode 100644 nifi/nar-bundles/persistent-provenance-repository-bundle/pom.xml delete mode 100644 nifi/nar-bundles/standard-bundle/jms-processors/src/main/resources/META-INF/services/org.apache.nifi.processor.Processor delete mode 100644 nifi/nar-bundles/standard-bundle/standard-ganglia-reporter/pom.xml delete mode 100644 nifi/nar-bundles/standard-bundle/standard-ganglia-reporter/src/main/resources/META-INF/services/org.apache.nifi.reporting.ReportingTask delete mode 100644 nifi/nar-bundles/update-attribute-bundle/ui/nb-configuration.xml delete mode 100644 nifi/nar-bundles/volatile-provenance-repository-bundle/nar/pom.xml delete mode 100644 nifi/nar-bundles/volatile-provenance-repository-bundle/pom.xml rename nifi/{assembly => nifi-assembly}/pom.xml (96%) rename nifi/{assembly => nifi-assembly}/src/main/assembly/dependencies.xml (98%) rename nifi/{commons/data-provenance-utils => nifi-commons/nifi-data-provenance-utils}/.gitignore (100%) rename nifi/{commons/data-provenance-utils => nifi-commons/nifi-data-provenance-utils}/pom.xml (91%) rename nifi/{commons/data-provenance-utils => nifi-commons/nifi-data-provenance-utils}/src/main/java/org/apache/nifi/provenance/AsyncLineageSubmission.java (100%) rename nifi/{commons/data-provenance-utils => nifi-commons/nifi-data-provenance-utils}/src/main/java/org/apache/nifi/provenance/AsyncQuerySubmission.java (100%) rename nifi/{commons/data-provenance-utils => nifi-commons/nifi-data-provenance-utils}/src/main/java/org/apache/nifi/provenance/NamedSearchableField.java (100%) rename nifi/{commons/data-provenance-utils => nifi-commons/nifi-data-provenance-utils}/src/main/java/org/apache/nifi/provenance/SearchableFieldParser.java (100%) rename nifi/{commons/data-provenance-utils => nifi-commons/nifi-data-provenance-utils}/src/main/java/org/apache/nifi/provenance/SearchableFields.java (100%) rename nifi/{commons/data-provenance-utils => nifi-commons/nifi-data-provenance-utils}/src/main/java/org/apache/nifi/provenance/StandardLineageResult.java (100%) rename nifi/{commons/data-provenance-utils => nifi-commons/nifi-data-provenance-utils}/src/main/java/org/apache/nifi/provenance/StandardProvenanceEventRecord.java (100%) rename nifi/{commons/data-provenance-utils => nifi-commons/nifi-data-provenance-utils}/src/main/java/org/apache/nifi/provenance/StandardQueryResult.java (100%) rename nifi/{commons/data-provenance-utils => nifi-commons/nifi-data-provenance-utils}/src/main/java/org/apache/nifi/provenance/lineage/EdgeNode.java (100%) rename nifi/{commons/data-provenance-utils => nifi-commons/nifi-data-provenance-utils}/src/main/java/org/apache/nifi/provenance/lineage/EventNode.java (100%) rename nifi/{commons/data-provenance-utils => nifi-commons/nifi-data-provenance-utils}/src/main/java/org/apache/nifi/provenance/lineage/FlowFileLineage.java (100%) rename nifi/{commons/data-provenance-utils => nifi-commons/nifi-data-provenance-utils}/src/main/java/org/apache/nifi/provenance/lineage/FlowFileNode.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/pom.xml (95%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/antlr3/org/apache/nifi/attribute/expression/language/antlr/AttributeExpressionLexer.g (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/antlr3/org/apache/nifi/attribute/expression/language/antlr/AttributeExpressionParser.g (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/antlr3/org/apache/nifi/attribute/expression/language/antlr/output/AttributeExpressionLexer.tokens (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/EmptyPreparedQuery.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/InvalidPreparedQuery.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/PreparedQuery.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/Query.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/StandardAttributeExpression.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/StandardExpressionLanguageCompiler.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/StandardPreparedQuery.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/BooleanEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/BooleanQueryResult.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/DateEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/DateQueryResult.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/Evaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/NumberEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/NumberQueryResult.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/QueryResult.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/StringEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/StringQueryResult.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/cast/BooleanCastEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/cast/DateCastEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/cast/NumberCastEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/cast/StringCastEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/AndEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/AppendEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/AttributeEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/ContainsEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/DateToNumberEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/DivideEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/EndsWithEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/EqualsEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/EqualsIgnoreCaseEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/FindEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/FormatEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/GreaterThanEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/GreaterThanOrEqualEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/HostnameEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/IPEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/IndexOfEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/IsEmptyEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/IsNullEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/LastIndexOfEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/LengthEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/LessThanEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/LessThanOrEqualEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/MatchesEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/MinusEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/ModEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/MultiplyEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/NotEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/NotNullEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/NowEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/NumberToDateEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/OneUpSequenceEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/OrEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/PlusEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/PrependEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/ReplaceAllEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/ReplaceEmptyEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/ReplaceEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/ReplaceNullEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/StartsWithEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/StringToDateEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/SubstringAfterEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/SubstringAfterLastEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/SubstringBeforeEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/SubstringBeforeLastEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/SubstringEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/ToLowerEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/ToNumberEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/ToRadixEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/ToStringEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/ToUpperEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/TrimEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/UrlDecodeEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/UrlEncodeEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/functions/UuidEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/literals/BooleanLiteralEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/literals/NumberLiteralEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/literals/StringLiteralEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/reduce/CountEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/reduce/JoinEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/reduce/ReduceEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/selection/AllAttributesEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/selection/AnyAttributeEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/selection/AnyMatchingAttributeEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/selection/DelineatedAttributeEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/selection/MappingEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/selection/MultiAttributeEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/selection/MultiMatchAttributeEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/evaluation/selection/MultiNamedAttributeEvaluator.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/exception/AttributeExpressionLanguageException.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/exception/AttributeExpressionLanguageParsingException.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/exception/IllegalAttributeException.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/test/java/org/apache/nifi/attribute/expression/language/TestQuery.java (100%) rename nifi/{commons => nifi-commons}/nifi-expression-language/src/test/java/org/apache/nifi/attribute/expression/language/TestStandardPreparedQuery.java (100%) rename nifi/{commons/flowfile-packager => nifi-commons/nifi-flowfile-packager}/pom.xml (92%) rename nifi/{commons/flowfile-packager => nifi-commons/nifi-flowfile-packager}/src/main/java/org/apache/nifi/util/FlowFilePackager.java (100%) rename nifi/{commons/flowfile-packager => nifi-commons/nifi-flowfile-packager}/src/main/java/org/apache/nifi/util/FlowFilePackagerV1.java (100%) rename nifi/{commons/flowfile-packager => nifi-commons/nifi-flowfile-packager}/src/main/java/org/apache/nifi/util/FlowFilePackagerV2.java (100%) rename nifi/{commons/flowfile-packager => nifi-commons/nifi-flowfile-packager}/src/main/java/org/apache/nifi/util/FlowFilePackagerV3.java (100%) rename nifi/{commons/flowfile-packager => nifi-commons/nifi-flowfile-packager}/src/main/java/org/apache/nifi/util/FlowFileUnpackager.java (100%) rename nifi/{commons/flowfile-packager => nifi-commons/nifi-flowfile-packager}/src/main/java/org/apache/nifi/util/FlowFileUnpackagerV1.java (100%) rename nifi/{commons/flowfile-packager => nifi-commons/nifi-flowfile-packager}/src/main/java/org/apache/nifi/util/FlowFileUnpackagerV2.java (100%) rename nifi/{commons/flowfile-packager => nifi-commons/nifi-flowfile-packager}/src/main/java/org/apache/nifi/util/FlowFileUnpackagerV3.java (100%) rename nifi/{commons/flowfile-packager => nifi-commons/nifi-flowfile-packager}/src/main/java/org/apache/nifi/util/Unpackage.java (100%) rename nifi/{commons/flowfile-packager => nifi-commons/nifi-flowfile-packager}/src/test/java/org/apache/nifi/util/TestPackageUnpackageV3.java (100%) rename nifi/{commons => nifi-commons}/nifi-logging-utils/pom.xml (94%) rename nifi/{commons => nifi-commons}/nifi-logging-utils/src/main/java/org/apache/nifi/logging/NiFiLog.java (100%) rename nifi/{commons/processor-utilities => nifi-commons/nifi-processor-utilities}/pom.xml (94%) rename nifi/{commons/processor-utilities => nifi-commons/nifi-processor-utilities}/src/main/java/org/apache/nifi/processor/util/FlowFileFilters.java (100%) rename nifi/{commons/processor-utilities => nifi-commons/nifi-processor-utilities}/src/main/java/org/apache/nifi/processor/util/SSLProperties.java (100%) rename nifi/{commons/processor-utilities => nifi-commons/nifi-processor-utilities}/src/main/java/org/apache/nifi/processor/util/StandardValidators.java (100%) rename nifi/{commons/processor-utilities => nifi-commons/nifi-processor-utilities}/src/test/java/org/apache/nifi/processor/TestFormatUtils.java (100%) rename nifi/{commons/processor-utilities => nifi-commons/nifi-processor-utilities}/src/test/java/org/apache/nifi/processor/util/TestStandardValidators.java (100%) rename nifi/{commons => nifi-commons}/nifi-properties/.gitignore (100%) rename nifi/{commons => nifi-commons}/nifi-properties/pom.xml (93%) rename nifi/{commons => nifi-commons}/nifi-properties/src/main/java/org/apache/nifi/util/NiFiProperties.java (100%) rename nifi/{commons => nifi-commons}/nifi-properties/src/main/java/org/apache/nifi/util/StringUtils.java (100%) rename nifi/{commons => nifi-commons}/nifi-security-utils/pom.xml (94%) rename nifi/{commons => nifi-commons}/nifi-security-utils/src/main/java/org/apache/nifi/security/util/CertificateUtils.java (100%) rename nifi/{commons => nifi-commons}/nifi-security-utils/src/main/java/org/apache/nifi/security/util/EncryptionMethod.java (100%) rename nifi/{commons => nifi-commons}/nifi-security-utils/src/main/java/org/apache/nifi/security/util/KeystoreType.java (100%) rename nifi/{commons => nifi-commons}/nifi-security-utils/src/main/java/org/apache/nifi/security/util/SecurityStoreTypes.java (100%) rename nifi/{commons => nifi-commons}/nifi-security-utils/src/main/java/org/apache/nifi/security/util/SslContextFactory.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/pom.xml (96%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/nio/AbstractChannelReader.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/nio/BufferPool.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/nio/ChannelDispatcher.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/nio/ChannelListener.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/nio/DatagramChannelReader.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/nio/SocketChannelReader.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/nio/consumer/AbstractStreamConsumer.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/nio/consumer/StreamConsumer.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/nio/consumer/StreamConsumerFactory.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/SSLContextFactory.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/ServerSocketConfiguration.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/SocketConfiguration.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/SocketListener.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/SocketUtils.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/multicast/DiscoverableService.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/multicast/DiscoverableServiceImpl.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/multicast/MulticastConfiguration.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/multicast/MulticastListener.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/multicast/MulticastServiceDiscovery.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/multicast/MulticastServicesBroadcaster.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/multicast/MulticastTimeToLive.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/multicast/MulticastUtils.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/multicast/ServiceDiscovery.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/main/java/org/apache/nifi/io/socket/multicast/ServicesBroadcaster.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/test/java/org/apache/nifi/io/nio/example/ServerMain.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/test/java/org/apache/nifi/io/nio/example/TCPClient.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/test/java/org/apache/nifi/io/nio/example/UDPClient.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/test/java/org/apache/nifi/io/nio/example/UselessStreamConsumer.java (100%) rename nifi/{commons => nifi-commons}/nifi-socket-utils/src/test/resources/log4j.xml (100%) rename nifi/{commons => nifi-commons}/nifi-utils/.gitignore (100%) rename nifi/{commons => nifi-commons}/nifi-utils/pom.xml (94%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/flowfile/attributes/CoreAttributes.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/flowfile/attributes/FlowFileAttributeKey.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/remote/StandardVersionNegotiator.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/remote/VersionNegotiator.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/remote/exception/TransmissionDisabledException.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/remote/io/CompressionInputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/remote/io/CompressionOutputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/remote/io/InterruptableInputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/remote/io/InterruptableOutputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/remote/io/socket/BufferStateManager.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/remote/io/socket/SocketChannelInputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/remote/io/socket/SocketChannelOutputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/remote/io/socket/ssl/SSLSocketChannel.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/remote/io/socket/ssl/SSLSocketChannelInputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/remote/io/socket/ssl/SSLSocketChannelOutputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/stream/io/BufferedInputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/stream/io/BufferedOutputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/stream/io/ByteArrayInputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/stream/io/ByteArrayOutputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/stream/io/ByteCountingInputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/stream/io/ByteCountingOutputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/stream/io/DataOutputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/stream/io/GZIPOutputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/stream/io/LeakyBucketStreamThrottler.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/stream/io/NonCloseableInputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/stream/io/NonCloseableOutputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/stream/io/NullOutputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/stream/io/StreamThrottler.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/stream/io/StreamUtils.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/stream/io/ZipOutputStream.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/stream/io/exception/BytePatternNotFoundException.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/stream/io/util/NonThreadSafeCircularBuffer.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/BooleanHolder.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/FormatUtils.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/IntegerHolder.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/LongHolder.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/NaiveSearchRingBuffer.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/ObjectHolder.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/RingBuffer.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/StopWatch.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/Tuple.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/concurrency/DebugDisabledTimedLock.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/concurrency/DebugEnabledTimedLock.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/concurrency/DebuggableTimedLock.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/concurrency/TimedLock.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/file/FileUtils.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/file/monitor/CompoundUpdateMonitor.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/file/monitor/LastModifiedMonitor.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/file/monitor/MD5SumMonitor.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/file/monitor/SynchronousFileWatcher.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/file/monitor/UpdateMonitor.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/search/Search.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/search/SearchTerm.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/search/ahocorasick/AhoCorasick.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/search/ahocorasick/Node.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/search/ahocorasick/SearchState.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/timebuffer/EntityAccess.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/timebuffer/LongEntityAccess.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/timebuffer/TimedBuffer.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/main/java/org/apache/nifi/util/timebuffer/TimestampedLong.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/test/java/org/apache/nifi/remote/io/TestCompressionInputOutputStreams.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/test/java/org/apache/nifi/stream/io/TestLeakyBucketThrottler.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/test/java/org/apache/nifi/util/TestNaiveSearchRingBuffer.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/test/java/org/apache/nifi/util/file/monitor/TestCompoundUpdateMonitor.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/test/java/org/apache/nifi/util/file/monitor/TestSynchronousFileWatcher.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/test/java/org/apache/nifi/util/timebuffer/TestRingBuffer.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/test/java/org/apache/nifi/util/timebuffer/TestTimedBuffer.java (100%) rename nifi/{commons => nifi-commons}/nifi-utils/src/test/resources/logback-test.xml (100%) rename nifi/{commons => nifi-commons}/nifi-web-utils/pom.xml (96%) rename nifi/{commons => nifi-commons}/nifi-web-utils/src/main/java/org/apache/nifi/web/util/ClientUtils.java (100%) rename nifi/{commons => nifi-commons}/nifi-web-utils/src/main/java/org/apache/nifi/web/util/ObjectMapperResolver.java (100%) rename nifi/{commons => nifi-commons}/nifi-web-utils/src/main/java/org/apache/nifi/web/util/WebUtils.java (100%) rename nifi/{commons/wali => nifi-commons/nifi-write-ahead-log}/.gitignore (100%) rename nifi/{commons/wali => nifi-commons/nifi-write-ahead-log}/pom.xml (91%) rename nifi/{commons/wali => nifi-commons/nifi-write-ahead-log}/src/main/java/org/wali/MinimalLockingWriteAheadLog.java (100%) rename nifi/{commons/wali => nifi-commons/nifi-write-ahead-log}/src/main/java/org/wali/SerDe.java (100%) rename nifi/{commons/wali => nifi-commons/nifi-write-ahead-log}/src/main/java/org/wali/SyncListener.java (100%) rename nifi/{commons/wali => nifi-commons/nifi-write-ahead-log}/src/main/java/org/wali/UpdateType.java (100%) rename nifi/{commons/wali => nifi-commons/nifi-write-ahead-log}/src/main/java/org/wali/WriteAheadRepository.java (100%) rename nifi/{commons/wali => nifi-commons/nifi-write-ahead-log}/src/test/java/org/wali/DummyRecord.java (100%) rename nifi/{commons/wali => nifi-commons/nifi-write-ahead-log}/src/test/java/org/wali/DummyRecordSerde.java (100%) rename nifi/{commons/wali => nifi-commons/nifi-write-ahead-log}/src/test/java/org/wali/TestMinimalLockingWriteAheadLog.java (100%) rename nifi/{commons => nifi-commons}/pom.xml (84%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework-nar}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/nar => nifi-nar-bundles/nifi-framework-bundle/nifi-framework-nar}/pom.xml (92%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-authorization-provider => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/pom.xml (95%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/AuditDataSourceFactoryBean.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/RepositoryUtils.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/UserDataSourceFactoryBean.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/dao/ActionDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/dao/AuthorityDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/dao/DAOFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/dao/DataAccessException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/dao/UserDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/dao/impl/DAOFactoryImpl.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/dao/impl/StandardActionDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/dao/impl/StandardAuthorityDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/dao/impl/StandardUserDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/AccountDisabledException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/AccountNotFoundException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/AccountPendingException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/AdministrationException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/AuditService.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/UserService.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/AbstractUserAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/AddActionsAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/AdministrationAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/AuthorizeDownloadAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/AuthorizeUserAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/CreateUserAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/DeleteUserAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/DisableUserAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/DisableUserGroupAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/FindUserByDnAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/FindUserByIdAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/GetActionAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/GetActionsAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/GetPreviousValues.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/GetUserGroupAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/GetUsersAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/HasPendingUserAccounts.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/InvalidateUserAccountAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/InvalidateUserGroupAccountsAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/PurgeActionsAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/RequestUserAccountAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/SeedUserAccountsAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/UngroupUserAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/UngroupUserGroupAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/UpdateUserAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/UpdateUserAuthoritiesCacheAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/UpdateUserCacheAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/action/UpdateUserGroupAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/impl/StandardAuditService.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/impl/StandardUserService.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/transaction/Transaction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/transaction/TransactionBuilder.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/transaction/TransactionException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/transaction/impl/StandardTransaction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/admin/service/transaction/impl/StandardTransactionBuilder.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/authorization/AuthorityProviderFactoryBean.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/authorization/StandardAuthorityProviderConfigurationContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/authorization/StandardAuthorityProviderInitializationContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/history/History.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/history/HistoryQuery.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/history/PreviousValue.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/user/AccountStatus.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/user/NiFiUser.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/java/org/apache/nifi/user/NiFiUserGroup.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/resources/nifi-administration-context.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/main/xsd/authority-providers.xsd (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/test/java/org/apache/nifi/admin/service/action/AuthorizeUserActionTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/test/java/org/apache/nifi/admin/service/action/CreateUserActionTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/test/java/org/apache/nifi/admin/service/action/DisableUserActionTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/test/java/org/apache/nifi/admin/service/action/InvalidateUserAccountActionTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/test/java/org/apache/nifi/admin/service/action/RequestUserAccountActionTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/test/java/org/apache/nifi/admin/service/action/SeedUserAccountsActionTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/administration => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration}/src/test/java/org/apache/nifi/admin/service/action/SetUserAuthoritiesActionTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/pom.xml (93%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/AboutDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/BannerDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/BulletinBoardDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/BulletinDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/BulletinQueryDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/ClusterDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/ConnectableDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/ConnectionDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/ControllerConfigurationDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/ControllerDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/CounterDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/CountersDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/DocumentedTypeDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/FlowSnippetDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/FunnelDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/LabelDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/NiFiComponentDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/NodeDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/NodeEventDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/NodeSystemDiagnosticsDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/PortDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/PositionDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/PreviousValueDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/ProcessGroupDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/ProcessorConfigDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/ProcessorDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/ProcessorHistoryDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/PropertyHistoryDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/RelationshipDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/RemoteProcessGroupContentsDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/RemoteProcessGroupDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/RemoteProcessGroupPortDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/RevisionDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/SnippetDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/SystemDiagnosticsDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/TemplateDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/UserDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/UserGroupDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/action/ActionDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/action/HistoryDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/action/HistoryQueryDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/action/component/details/ComponentDetailsDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/action/component/details/ProcessorDetailsDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/action/component/details/RemoteProcessGroupDetailsDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/action/details/ActionDetailsDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/action/details/ConfigureDetailsDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/action/details/ConnectDetailsDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/action/details/MoveDetailsDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/action/details/PurgeDetailsDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/provenance/AttributeDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/provenance/ProvenanceDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/provenance/ProvenanceEventDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/provenance/ProvenanceOptionsDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/provenance/ProvenanceRequestDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/provenance/ProvenanceResultsDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/provenance/ProvenanceSearchableFieldDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/provenance/lineage/LineageDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/provenance/lineage/LineageRequestDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/provenance/lineage/LineageResultsDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/provenance/lineage/ProvenanceLinkDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/provenance/lineage/ProvenanceNodeDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/search/ComponentSearchResultDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/search/NodeSearchResultDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/search/SearchResultsDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/search/UserGroupSearchResultDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/search/UserSearchResultDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/ClusterConnectionStatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/ClusterPortStatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/ClusterProcessorStatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/ClusterRemoteProcessGroupStatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/ClusterStatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/ClusterStatusHistoryDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/ConnectionStatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/ControllerStatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/NodeConnectionStatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/NodePortStatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/NodeProcessorStatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/NodeRemoteProcessGroupStatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/NodeStatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/NodeStatusHistoryDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/PortStatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/ProcessGroupStatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/ProcessorStatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/RemotePortStatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/RemoteProcessGroupStatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/StatusDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/StatusDescriptorDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/StatusHistoryDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/StatusHistoryDetailDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/status/StatusSnapshotDTO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/util/DateTimeAdapter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/util/TimeAdapter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/dto/util/TimestampAdapter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/AboutEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ActionEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/AuthorityEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/BannerEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/BulletinBoardEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ClusterConnectionStatusEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ClusterEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ClusterPortStatusEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ClusterProcessorStatusEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ClusterRemoteProcessGroupStatusEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ClusterSearchResultsEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ClusterStatusEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ClusterStatusHistoryEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ConnectionEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ConnectionsEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ControllerConfigurationEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ControllerEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ControllerStatusEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/CounterEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/CountersEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/Entity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/FlowSnippetEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/FunnelEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/FunnelsEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/HistoryEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/InputPortEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/InputPortsEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/LabelEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/LabelsEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/LineageEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/NodeEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/NodeStatusEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/NodeSystemDiagnosticsEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/OutputPortEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/OutputPortsEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/PrioritizerTypesEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ProcessGroupEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ProcessGroupStatusEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ProcessGroupsEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ProcessorEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ProcessorHistoryEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ProcessorTypesEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ProcessorsEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ProvenanceEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ProvenanceEventEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/ProvenanceOptionsEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/RemoteProcessGroupEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/RemoteProcessGroupPortEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/RemoteProcessGroupsEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/SearchResultsEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/SnippetEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/StatusHistoryEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/SystemDiagnosticsEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/TemplateEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/TemplatesEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/UserEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/UserGroupEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/UserSearchResultsEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/client-dto => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-client-dto}/src/main/java/org/apache/nifi/web/api/entity/UsersEntity.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-authorization-provider}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-authorization-provider => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-authorization-provider}/pom.xml (83%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-authorization-provider => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-authorization-provider}/src/main/java/org/apache/nifi/cluster/authorization/ClusterManagerAuthorizationProvider.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-authorization-provider => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-authorization-provider}/src/main/java/org/apache/nifi/cluster/authorization/NodeAuthorizationProvider.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-authorization-provider => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-authorization-provider}/src/main/java/org/apache/nifi/cluster/authorization/protocol/message/DoesDnExistMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-authorization-provider => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-authorization-provider}/src/main/java/org/apache/nifi/cluster/authorization/protocol/message/GetAuthoritiesMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-authorization-provider => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-authorization-provider}/src/main/java/org/apache/nifi/cluster/authorization/protocol/message/GetGroupForUserMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-authorization-provider => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-authorization-provider}/src/main/java/org/apache/nifi/cluster/authorization/protocol/message/ProtocolMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-authorization-provider => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-authorization-provider}/src/main/java/org/apache/nifi/cluster/authorization/protocol/message/jaxb/JaxbProtocolUtils.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-authorization-provider => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-authorization-provider}/src/main/java/org/apache/nifi/cluster/authorization/protocol/message/jaxb/ObjectFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-authorization-provider => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-authorization-provider}/src/main/resources/META-INF/services/org.apache.nifi.authorization.AuthorityProvider (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/pom.xml (92%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/ClusterManagerProtocolSender.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/ConnectionRequest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/ConnectionResponse.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/Heartbeat.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/NodeBulletins.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/NodeIdentifier.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/NodeProtocolSender.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/ProtocolContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/ProtocolException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/ProtocolHandler.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/ProtocolListener.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/ProtocolMessageMarshaller.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/ProtocolMessageUnmarshaller.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/StandardDataFlow.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/UnknownServiceAddressException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderImpl.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderListener.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceDiscovery.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceLocator.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServicesBroadcaster.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/impl/CopyingInputStream.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/impl/MulticastProtocolListener.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderImpl.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderListener.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/impl/SocketProtocolListener.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/jaxb/JaxbProtocolContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedConnectionRequest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedConnectionResponse.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedCounter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedDataFlow.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedHeartbeat.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedNodeBulletins.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedNodeIdentifier.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ConnectionRequestAdapter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ConnectionResponseAdapter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/DataFlowAdapter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/HeartbeatAdapter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/JaxbProtocolUtils.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/NodeBulletinsAdapter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/NodeIdentifierAdapter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ObjectFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/message/ConnectionRequestMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/message/ConnectionResponseMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/message/ControllerStartupFailureMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/message/DisconnectMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/message/ExceptionMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/message/FlowRequestMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/message/FlowResponseMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/message/HeartbeatMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/message/MulticastProtocolMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/message/NodeBulletinsMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/message/PingMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/message/PrimaryRoleAssignmentMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/message/ProtocolMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionFailureMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionRequestMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionResponseMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/message/ServiceBroadcastMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/spring/MulticastConfigurationFactoryBean.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/spring/ServerSocketConfigurationFactoryBean.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/java/org/apache/nifi/cluster/protocol/spring/SocketConfigurationFactoryBean.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/main/resources/nifi-cluster-protocol-context.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderImplTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceDiscoveryTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceLocatorTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServicesBroadcasterTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/test/java/org/apache/nifi/cluster/protocol/impl/MulticastProtocolListenerTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/test/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderImplTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/test/java/org/apache/nifi/cluster/protocol/impl/testutils/DelayedProtocolHandler.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-protocol => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-protocol}/src/test/java/org/apache/nifi/cluster/protocol/impl/testutils/ReflexiveProtocolHandler.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-web}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-web}/pom.xml (90%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-web}/src/main/java/org/apache/nifi/cluster/context/ClusterContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-web}/src/main/java/org/apache/nifi/cluster/context/ClusterContextImpl.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-web}/src/main/java/org/apache/nifi/cluster/context/ClusterContextThreadLocal.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster-web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster-web}/src/main/java/org/apache/nifi/web/ClusterAwareOptimisticLockingManager.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/pom.xml (88%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/client/MulticastTestClient.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/event/Event.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/event/EventManager.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/event/impl/EventManagerImpl.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/firewall/ClusterNodeFirewall.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/firewall/impl/FileBasedClusterNodeFirewall.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/flow/ClusterDataFlow.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/flow/DaoException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/flow/DataFlowDao.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/flow/DataFlowManagementService.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/flow/PersistedFlowState.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/flow/StaleFlowException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/flow/impl/DataFlowDaoImpl.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/flow/impl/DataFlowManagementServiceImpl.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/ClusterManager.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/HttpClusterManager.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/HttpRequestReplicator.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/HttpResponseMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/NodeResponse.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/BlockedByFirewallException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/ClusterException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/ConnectingNodeMutableRequestException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/DisconnectedNodeMutableRequestException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/IllegalClusterStateException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/IllegalNodeDeletionException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/IllegalNodeDisconnectionException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/IllegalNodeReconnectionException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/IneligiblePrimaryNodeException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/MutableRequestException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/NoConnectedNodesException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/NoResponseFromNodesException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/NodeDisconnectionException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/NodeReconnectionException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/PrimaryRoleAssignmentException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/SafeModeMutableRequestException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/UnknownNodeException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/exception/UriConstructionException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/impl/ClusteredEventAccess.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/impl/ClusteredReportingContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/impl/HttpRequestReplicatorImpl.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/impl/HttpResponseMapperImpl.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/manager/impl/WebClusterManager.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/node/Node.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/spring/ClusterManagerProtocolServiceLocatorFactoryBean.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/spring/FileBasedClusterNodeFirewallFactoryBean.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/cluster/spring/WebClusterManagerFactoryBean.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/java/org/apache/nifi/controller/reporting/ClusteredReportingTaskNode.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/main/resources/nifi-cluster-manager-context.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/event/impl/EventManagerImplTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/firewall/impl/FileBasedClusterNodeFirewallTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/flow/impl/DataFlowManagementServiceImplTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/manager/impl/HttpRequestReplicatorImplTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/manager/impl/HttpResponseMapperImplTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/manager/impl/TestWebClusterManager.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/manager/testutils/HttpRequest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/manager/testutils/HttpResponse.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/manager/testutils/HttpResponseAction.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/manager/testutils/HttpServer.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderImplTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceLocatorTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServicesBroadcasterTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/protocol/impl/MulticastProtocolListenerTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderImplTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/protocol/impl/SocketProtocolListenerTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/protocol/testutils/DelayedProtocolHandler.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/java/org/apache/nifi/cluster/protocol/testutils/ReflexiveProtocolHandler.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/resources/logback-test.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/resources/org/apache/nifi/cluster/firewall/impl/empty.txt (100%) rename nifi/{nar-bundles/framework-bundle/framework/cluster => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-cluster}/src/test/resources/org/apache/nifi/cluster/firewall/impl/ips.txt (100%) rename nifi/{nar-bundles/framework-bundle/framework/file-authorization-provider => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-file-authorization-provider}/pom.xml (94%) rename nifi/{nar-bundles/framework-bundle/framework/file-authorization-provider => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-file-authorization-provider}/src/main/java/org/apache/nifi/authorization/FileAuthorizationProvider.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/file-authorization-provider => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-file-authorization-provider}/src/main/resources/META-INF/services/org.apache.nifi.authorization.AuthorityProvider (100%) rename nifi/{nar-bundles/framework-bundle/framework/file-authorization-provider => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-file-authorization-provider}/src/main/xsd/users.xsd (100%) rename nifi/{nar-bundles/framework-bundle/framework/file-authorization-provider => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-file-authorization-provider}/src/test/java/org/apache/nifi/authorization/FileAuthorizationProviderTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/pom.xml (90%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/cluster/AdaptedNodeInformation.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/cluster/ClusterNodeInformation.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/cluster/NodeInformant.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/cluster/NodeInformation.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/cluster/NodeInformationAdapter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/cluster/protocol/DataFlow.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/connectable/Connectable.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/connectable/ConnectableType.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/connectable/Connection.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/connectable/Funnel.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/connectable/Port.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/connectable/Position.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/connectable/Size.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/AbstractConfiguredComponent.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/AbstractPort.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/Availability.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/ConfiguredComponent.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/ContentAvailability.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/Counter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/EventBasedWorker.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/Heartbeater.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/ProcessScheduler.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/ProcessorNode.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/ReportingTaskNode.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/StandardFlowFileQueue.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/StandardFunnel.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/ValidationContextFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/WorkerQueue.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/exception/CommunicationsException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/exception/ControllerServiceAlreadyExistsException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/exception/ControllerServiceNotFoundException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/exception/ProcessorInstantiationException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/exception/ProcessorLifeCycleException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/label/Label.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/reporting/ReportingTaskInstantiationException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/repository/ContentNotFoundException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/repository/CounterRepository.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/repository/FlowFileEvent.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/repository/FlowFileEventRepository.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/repository/RepositoryStatusReport.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/service/ControllerServiceNode.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/service/ControllerServiceProvider.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/controller/service/ControllerServiceReference.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/events/BulletinFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/events/BulletinProcessingStrategy.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/events/ComponentBulletin.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/events/SystemBulletin.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/groups/ProcessGroup.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/groups/ProcessGroupCounts.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/groups/RemoteProcessGroup.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/groups/RemoteProcessGroupPortDescriptor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/logging/LogMessage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/logging/LogObserver.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/logging/LogRepository.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/logging/LogRepositoryFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/nar/NarCloseable.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/nar/NarThreadContextClassLoader.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/Peer.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/PeerStatus.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/PortAuthorizationResult.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/RemoteAuthorizationState.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/RemoteGroupPort.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/RootGroupPort.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/TransferDirection.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/VersionedRemoteResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/codec/FlowFileCodec.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/exception/BadRequestException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/exception/HandshakeException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/exception/NotAuthorizedException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/exception/PortNotRunningException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/exception/ProtocolException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/exception/RequestExpiredException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/exception/UnknownPortException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/protocol/ClientProtocol.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/protocol/CommunicationsInput.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/protocol/CommunicationsOutput.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/protocol/CommunicationsSession.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/protocol/RequestType.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api}/src/main/java/org/apache/nifi/remote/protocol/ServerProtocol.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/nar => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/pom.xml (90%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/cluster/BulletinsPayload.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/cluster/ConnectionException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/cluster/DisconnectionException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/cluster/HeartbeatPayload.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/connectable/LocalPort.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/connectable/StandardConnection.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/EventDrivenWorkerQueue.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/FileSystemSwapManager.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/FlowController.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/FlowFromDOMFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/FlowSerializationException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/FlowSerializer.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/FlowSynchronizationException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/FlowSynchronizer.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/FlowUnmarshaller.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/SnippetManager.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/StandardCounter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/StandardFlowSerializer.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/StandardFlowService.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/StandardFlowSynchronizer.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/StandardProcessorNode.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/StandardSnippet.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/Template.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/TemplateManager.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/UninheritableFlowException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/exception/FlowFileConsumptionException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/exception/ReportingTaskInstantiationException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/exception/ValidationException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/label/StandardLabel.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/reporting/AbstractReportingTaskNode.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/reporting/StandardReportingContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/reporting/StandardReportingInitializationContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/reporting/StandardReportingTaskNode.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/BatchingSessionFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/ConnectionSwapInfo.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/FileSystemRepository.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/ProcessContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/ProvenanceEventEnricher.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/RepositoryPurgeException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/RingBufferEventRepository.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/StandardCounterRepository.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/StandardFlowFileEvent.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/StandardFlowFileRecord.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/StandardProcessSession.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/StandardProcessSessionFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/StandardProvenanceReporter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/StandardRepositoryRecord.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/StandardRepositoryStatusReport.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/VolatileContentRepository.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/VolatileFlowFileRepository.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/WriteAheadFlowFileRepository.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/claim/ContentDirection.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/claim/StandardContentClaim.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/claim/StandardContentClaimManager.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/io/ArrayManagedOutputStream.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/io/ByteCountingInputStream.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/io/ByteCountingOutputStream.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/io/DisableOnCloseOutputStream.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/io/FlowFileAccessInputStream.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/io/FlowFileAccessOutputStream.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/io/LimitedInputStream.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/io/LongHolder.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/io/MemoryManager.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/repository/io/SyncOnCloseOutputStream.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/scheduling/ConnectableProcessContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/scheduling/EventDrivenSchedulingAgent.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/scheduling/ProcessContextFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/scheduling/QuartzSchedulingAgent.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/scheduling/ScheduleState.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/scheduling/SchedulingAgent.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/scheduling/StandardProcessScheduler.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/scheduling/TimerDrivenSchedulingAgent.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/service/ControllerServiceLoader.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/service/StandardConfigurationContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceInitializationContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceNode.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceProvider.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceReference.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/status/history/StandardMetricDescriptor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/status/history/StandardStatusHistory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/status/history/StandardStatusSnapshot.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/status/history/StatusHistoryUtil.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/status/history/VolatileComponentStatusRepository.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/tasks/ContinuallyRunConnectableTask.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/tasks/ContinuallyRunProcessorTask.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/tasks/ExpireFlowFiles.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/controller/tasks/ReportingTaskWrapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/diagnostics/DiagnosticUtils.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/diagnostics/GarbageCollection.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/diagnostics/StorageUsage.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/diagnostics/SystemDiagnostics.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/diagnostics/SystemDiagnosticsFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/encrypt/EncryptionException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/encrypt/StringEncryptor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/engine/FlowEngine.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/events/NodeBulletinProcessingStrategy.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/events/VolatileBulletinRepository.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/events/network/CommunicationsFailure.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/events/network/NetworkTransfer.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/fingerprint/FingerprintException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/fingerprint/FingerprintFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/groups/StandardProcessGroup.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/jaxb/AdaptedBulletin.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/jaxb/AdaptedCounter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/jaxb/BulletinAdapter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/jaxb/CounterAdapter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/lifecycle/LifeCycle.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/lifecycle/LifeCycleException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/lifecycle/LifeCycleStartException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/lifecycle/LifeCycleStopException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/logging/ProcessorLogObserver.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/logging/repository/StandardLogRepository.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/persistence/FlowConfigurationDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/persistence/StandardSnippetDeserializer.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/persistence/StandardSnippetSerializer.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/persistence/StandardXMLFlowConfigurationDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/persistence/TemplateDeserializer.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/persistence/TemplateSerializer.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/processor/SimpleProcessLogger.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/processor/StandardProcessContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/processor/StandardProcessorInitializationContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/processor/StandardPropertyValue.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/processor/StandardSchedulingContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/processor/StandardValidationContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/processor/StandardValidationContextFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/remote/StandardRemoteProcessGroup.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/remote/StandardRemoteProcessGroupPortDescriptor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/services/FlowService.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/spring/FlowControllerFactoryBean.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/spring/RingBufferEventRepositoryBean.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/spring/StandardFlowServiceFactoryBean.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/util/ComponentStatusReport.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/util/Connectables.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/util/DomUtils.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/util/ReflectionUtils.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/java/org/apache/nifi/util/SnippetUtils.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/resources/ControllerServiceConfiguration.xsd (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/resources/FlowConfiguration.xsd (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/resources/ReportingTaskConfiguration.xsd (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/main/resources/nifi-context.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/java/org/apache/nifi/cluster/HeartbeatPayloadTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/java/org/apache/nifi/controller/StandardFlowServiceTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/java/org/apache/nifi/controller/TestFileSystemSwapManager.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/java/org/apache/nifi/controller/repository/TestFileSystemRepository.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/java/org/apache/nifi/controller/repository/TestRingBufferEventRepository.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/java/org/apache/nifi/controller/repository/TestStandardProcessSession.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/java/org/apache/nifi/controller/repository/TestStandardProvenanceReporter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/java/org/apache/nifi/controller/repository/TestVolatileContentRepository.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/java/org/apache/nifi/controller/repository/TestWriteAheadFlowFileRepository.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/java/org/apache/nifi/controller/repository/io/TestLimitedOutputStream.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/java/org/apache/nifi/controller/repository/util/DiskUtils.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/java/org/apache/nifi/fingerprint/FingerprintFactoryTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/java/org/apache/nifi/processor/TestStandardPropertyValue.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/java/org/apache/nifi/test/processors/DataGeneratorTestProcessor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/java/org/apache/nifi/test/processors/StubAttributeLoggerProcessor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/java/org/apache/nifi/test/processors/StubTerminationFileProcessor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/conf/0bytes.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/conf/all-flow-corrupt.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/conf/all-flow-inheritable.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/conf/all-flow-uninheritable.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/conf/all-flow.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/conf/nifi.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/conf/only-termination.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/conf/remote-flow.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/conf/standard-flow.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/conf/taskConfig.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/conf/termination-only.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/hello.txt (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/logback-test.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/nifi-with-remote.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/nifi.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/nifi/fingerprint/flow1a.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/nifi/fingerprint/flow1b.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/nifi/fingerprint/flow2.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/core => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core}/src/test/resources/old-swap-file.swap (100%) rename nifi/{nar-bundles/framework-bundle/framework/security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/nar => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils}/pom.xml (92%) rename nifi/{nar-bundles/framework-bundle/framework/nar => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils}/src/main/java/org/apache/nifi/nar/ExtensionManager.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/nar => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils}/src/main/java/org/apache/nifi/nar/ExtensionMapping.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/nar => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils}/src/main/java/org/apache/nifi/nar/NarClassLoader.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/nar => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils}/src/main/java/org/apache/nifi/nar/NarClassLoaders.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/nar => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils}/src/main/java/org/apache/nifi/nar/NarUnpacker.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/nar => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-nar-utils}/src/main/java/org/apache/nifi/util/FileUtils.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/resources => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-resources}/pom.xml (96%) rename nifi/{nar-bundles/framework-bundle/framework/resources => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-resources}/src/main/assembly/dependencies.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/resources => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-resources}/src/main/resources/bin/dump-nifi.bat (100%) rename nifi/{nar-bundles/framework-bundle/framework/resources => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-resources}/src/main/resources/bin/nifi-status.bat (100%) rename nifi/{nar-bundles/framework-bundle/framework/resources => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-resources}/src/main/resources/bin/nifi.sh (100%) rename nifi/{nar-bundles/framework-bundle/framework/resources => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-resources}/src/main/resources/bin/run-nifi.bat (100%) rename nifi/{nar-bundles/framework-bundle/framework/resources => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-resources}/src/main/resources/bin/start-nifi.bat (100%) rename nifi/{nar-bundles/framework-bundle/framework/resources => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-resources}/src/main/resources/bin/stop-nifi.bat (100%) rename nifi/{nar-bundles/framework-bundle/framework/resources => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-resources}/src/main/resources/conf/authority-providers.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/resources => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-resources}/src/main/resources/conf/authorized-users.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/resources => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-resources}/src/main/resources/conf/bootstrap.conf (100%) rename nifi/{nar-bundles/framework-bundle/framework/resources => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-resources}/src/main/resources/conf/controller-services.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/resources => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-resources}/src/main/resources/conf/logback.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/resources => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-resources}/src/main/resources/conf/nifi.properties (99%) rename nifi/{nar-bundles/framework-bundle/framework/resources => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-resources}/src/main/resources/conf/reporting-tasks.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/runtime => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/runtime => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime}/pom.xml (93%) rename nifi/{nar-bundles/framework-bundle/framework/runtime => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime}/src/main/java/org/apache/nifi/BootstrapListener.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/runtime => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime}/src/main/java/org/apache/nifi/NiFi.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/runtime => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime}/src/main/java/org/apache/nifi/NiFiServer.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/runtime => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime}/src/main/java/org/apache/nifi/util/LimitingInputStream.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-security}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-security}/pom.xml (95%) rename nifi/{nar-bundles/framework-bundle/framework/security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-security}/src/main/java/org/apache/nifi/framework/security/util/SslContextCreationException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-security}/src/main/java/org/apache/nifi/framework/security/util/SslContextFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-security}/src/main/java/org/apache/nifi/framework/security/util/SslException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-security}/src/main/java/org/apache/nifi/framework/security/util/SslServerSocketFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-security}/src/main/java/org/apache/nifi/framework/security/util/SslServerSocketFactoryCreationException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-security}/src/main/java/org/apache/nifi/framework/security/util/SslSocketFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-security}/src/main/java/org/apache/nifi/framework/security/util/SslSocketFactoryCreationException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-security}/src/test/java/org/apache/nifi/framework/security/util/SslContextFactoryTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-security}/src/test/resources/localhost-ks.jks (100%) rename nifi/{nar-bundles/framework-bundle/framework/security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-security}/src/test/resources/localhost-ts.jks (100%) rename nifi/{nar-bundles/framework-bundle/framework/security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-security}/src/test/resources/log4j.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/user-actions => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/pom.xml (94%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/controller/util/RemoteProcessGroupUtils.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/AbstractCommunicationsSession.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/RemoteResourceFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/RemoteResourceManager.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/RemoteSiteListener.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/SocketRemoteSiteListener.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/StandardRemoteGroupPort.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/StandardRootGroupPort.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/codec/StandardFlowFileCodec.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/exception/UnsupportedCodecException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/io/socket/SocketChannelCommunicationsSession.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/io/socket/SocketChannelInput.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/io/socket/SocketChannelOutput.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/io/socket/ssl/SSLSocketChannelCommunicationsSession.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/io/socket/ssl/SSLSocketChannelInput.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/io/socket/ssl/SSLSocketChannelOutput.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/protocol/socket/ClusterManagerServerProtocol.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/protocol/socket/HandshakeProperty.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/protocol/socket/Response.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/protocol/socket/ResponseCode.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/protocol/socket/SocketClientProtocol.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/java/org/apache/nifi/remote/protocol/socket/SocketFlowFileServerProtocol.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/resources/META-INF/services/org.apache.nifi.remote.codec.FlowFileCodec (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/resources/META-INF/services/org.apache.nifi.remote.protocol.ClientProtocol (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/main/resources/META-INF/services/org.apache.nifi.remote.protocol.ServerProtocol (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/test/java/org/apache/nifi/remote/TestStandardRemoteGroupPort.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/test/java/org/apache/nifi/remote/TestStandardSiteToSiteProtocol.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/test/java/org/apache/nifi/remote/io/socket/TestSocketChannelStreams.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/test/java/org/apache/nifi/remote/io/socket/ssl/TestSSLSocketChannel.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/test/resources/dummy-certs/localhost-ks.jks (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/test/resources/dummy-certs/localhost-ts.jks (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/test/resources/logback-test.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/site-to-site => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-site-to-site}/src/test/resources/nifi.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/custom-ui-utilities => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-user-actions}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/user-actions => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-user-actions}/pom.xml (93%) rename nifi/{nar-bundles/framework-bundle/framework/user-actions => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-user-actions}/src/main/java/org/apache/nifi/action/Action.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/user-actions => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-user-actions}/src/main/java/org/apache/nifi/action/Component.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/user-actions => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-user-actions}/src/main/java/org/apache/nifi/action/Operation.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/user-actions => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-user-actions}/src/main/java/org/apache/nifi/action/component/details/ComponentDetails.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/user-actions => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-user-actions}/src/main/java/org/apache/nifi/action/component/details/ProcessorDetails.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/user-actions => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-user-actions}/src/main/java/org/apache/nifi/action/component/details/RemoteProcessGroupDetails.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/user-actions => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-user-actions}/src/main/java/org/apache/nifi/action/details/ActionDetails.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/user-actions => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-user-actions}/src/main/java/org/apache/nifi/action/details/ConfigureDetails.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/user-actions => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-user-actions}/src/main/java/org/apache/nifi/action/details/ConnectDetails.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/user-actions => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-user-actions}/src/main/java/org/apache/nifi/action/details/MoveDetails.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/user-actions => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-user-actions}/src/main/java/org/apache/nifi/action/details/PurgeDetails.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/nifi-jetty => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-custom-ui-utilities}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/custom-ui-utilities => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-custom-ui-utilities}/pom.xml (89%) rename nifi/{nar-bundles/framework-bundle/framework/web/custom-ui-utilities => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-custom-ui-utilities}/src/main/java/org/apache/nifi/web/HttpServletRequestContextConfig.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/nifi-web-api => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-jetty}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-jetty/pom.xml (92%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-jetty/src/main/assembly/distribution.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-jetty/src/main/java/org/apache/nifi/web/server/JettyServer.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-jetty/src/main/java/org/apache/nifi/web/server/ServerConfigurationException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-jetty/src/main/resources/org/apache/nifi/web/webdefault.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/nifi-web-docs => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/pom.xml (94%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/enunciate/enunciate.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/enunciate/images/home.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/enunciate/override.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/aop/MethodProfiler.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/audit/ControllerAuditor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/audit/FunnelAuditor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/audit/NiFiAuditor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/audit/PortAuditor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/audit/ProcessGroupAuditor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/audit/ProcessorAuditor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/audit/RelationshipAuditor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/audit/RemoteProcessGroupAuditor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/audit/SnippetAuditor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/ClusterRequestException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/IllegalClusterResourceRequestException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/NiFiCoreException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/NiFiServiceFacade.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/NiFiServiceFacadeLock.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/StandardNiFiServiceFacade.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/StandardNiFiWebContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/ApplicationResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/BulletinBoardResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/ClusterResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/ConnectionResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/ControllerResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/FunnelResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/HistoryResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/InputPortResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/LabelResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/NodeResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/OutputPortResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/ProcessGroupResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/ProcessorResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/ProvenanceResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/RemoteProcessGroupResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/SnippetResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/SystemDiagnosticsResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/TemplateResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/UserGroupResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/UserResource.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/AccessDeniedExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/AccountNotFoundExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/AdministrationExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/AuthenticationCredentialsNotFoundExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/ClusterExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/ConnectingNodeMutableRequestExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/DisconnectedNodeMutableRequestExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/IllegalArgumentExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/IllegalClusterResourceRequestExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/IllegalClusterStateExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/IllegalNodeDeletionExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/IllegalNodeDisconnectionExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/IllegalNodeReconnectionExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/IllegalStateExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/IneligiblePrimaryNodeExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/InvalidRevisionExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/JsonMappingExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/JsonParseExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/MutableRequestExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/NiFiCoreExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/NoConnectedNodesExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/NoResponseFromNodesExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/NodeDisconnectionExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/NodeReconnectionExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/PrimaryRoleAssignmentExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/ResourceNotFoundExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/SafeModeMutableRequestExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/ThrowableMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/UnknownNodeExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/ValidationExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/config/WebApplicationExceptionMapper.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/dto/DtoFactory.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/package-info.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/request/BulletinBoardPatternParameter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/request/ClientIdParameter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/request/ConnectableTypeParameter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/request/DateTimeParameter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/request/DoubleParameter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/request/IntegerParameter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/api/request/LongParameter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/contextlistener/ApplicationStartupContextListener.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/controller/ControllerFacade.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/controller/StandardSearchContext.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/ConnectionDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/FunnelDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/LabelDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/PortDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/ProcessGroupDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/ProcessorDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/RemoteProcessGroupDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/SnippetDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/TemplateDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/impl/ComponentDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/impl/StandardConnectionDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/impl/StandardFunnelDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/impl/StandardInputPortDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/impl/StandardLabelDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/impl/StandardOutputPortDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/impl/StandardProcessGroupDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/impl/StandardProcessorDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/impl/StandardRemoteProcessGroupDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/impl/StandardSnippetDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/dao/impl/StandardTemplateDAO.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/filter/NodeRequestFilter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/filter/RequestLogger.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/filter/ThreadLocalFilter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/filter/TimerFilter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/util/ClientResponseUtils.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/util/DownloadableContent.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/java/org/apache/nifi/web/util/SnippetUtils.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/resources/nifi-web-api-context.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/main/webapp/WEB-INF/web.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/java/org/apache/nifi/integration/NiFiWebApiTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/java/org/apache/nifi/integration/accesscontrol/AdminAccessControlTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/java/org/apache/nifi/integration/accesscontrol/DfmAccessControlTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/java/org/apache/nifi/integration/accesscontrol/ReadOnlyAccessControlTest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/java/org/apache/nifi/integration/util/NiFiTestAuthorizationProvider.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/java/org/apache/nifi/integration/util/NiFiTestServer.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/java/org/apache/nifi/integration/util/NiFiTestUser.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/java/org/apache/nifi/integration/util/SourceTestProcessor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/java/org/apache/nifi/integration/util/TerminationTestProcessor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/java/org/apache/nifi/integration/util/TestPrioritizer.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/resources/META-INF/services/org.apache.nifi.authorization.AuthorityProvider (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/resources/META-INF/services/org.apache.nifi.flowfile.FlowFilePrioritizer (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/resources/META-INF/services/org.apache.nifi.processor.Processor (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/resources/access-control/authority-providers.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/resources/access-control/controller-services.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/resources/access-control/localhost-ks.jks (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/resources/access-control/localhost-ts.jks (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/resources/access-control/nifi.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/resources/access-control/reporting-tasks.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-api/src/test/resources/logback-test.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/nifi-web-error => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-docs}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-docs/pom.xml (95%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-docs/src/main/java/org/apache/nifi/web/docs/DocumentationController.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-docs/src/main/webapp/WEB-INF/jsp/documentation.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-docs/src/main/webapp/WEB-INF/jsp/no-documentation-found.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-docs/src/main/webapp/WEB-INF/web.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-docs/src/main/webapp/css/component-usage.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-docs/src/main/webapp/css/main.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-docs/src/main/webapp/images/bgBannerFoot.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-docs/src/main/webapp/images/bgHeader.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-docs/src/main/webapp/images/bgTableHeader.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-docs/src/main/webapp/js/application.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/nifi-web-ui => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-error}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-error/pom.xml (96%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-error/src/main/java/org/apache/nifi/web/filter/CatchAllFilter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-error/src/main/webapp/WEB-INF/web.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-error/src/main/webapp/index.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-optimistic-locking => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-optimistic-locking}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-optimistic-locking => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-optimistic-locking}/pom.xml (90%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-optimistic-locking => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-optimistic-locking}/src/main/java/org/apache/nifi/web/ConfigurationSnapshot.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-optimistic-locking => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-optimistic-locking}/src/main/java/org/apache/nifi/web/OptimisticLockingManager.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-optimistic-locking => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-optimistic-locking}/src/main/java/org/apache/nifi/web/StandardOptimisticLockingManager.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/pom.xml (94%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/src/main/java/org/apache/nifi/web/security/DnUtils.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/src/main/java/org/apache/nifi/web/security/UntrustedProxyException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/src/main/java/org/apache/nifi/web/security/anonymous/NiFiAnonymousUserFilter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/src/main/java/org/apache/nifi/web/security/authentication/NiFiAuthenticationEntryPoint.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/src/main/java/org/apache/nifi/web/security/authorization/NiFiAuthorizationService.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/src/main/java/org/apache/nifi/web/security/authorization/NodeAuthorizedUserFilter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/src/main/java/org/apache/nifi/web/security/user/NiFiUserDetails.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/src/main/java/org/apache/nifi/web/security/user/NiFiUserUtils.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/src/main/java/org/apache/nifi/web/security/x509/SubjectDnX509PrincipalExtractor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/src/main/java/org/apache/nifi/web/security/x509/X509AuthenticationFilter.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/src/main/java/org/apache/nifi/web/security/x509/X509CertificateExtractor.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/src/main/java/org/apache/nifi/web/security/x509/ocsp/CertificateStatusException.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/src/main/java/org/apache/nifi/web/security/x509/ocsp/OcspCertificateValidator.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/src/main/java/org/apache/nifi/web/security/x509/ocsp/OcspRequest.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/src/main/java/org/apache/nifi/web/security/x509/ocsp/OcspStatus.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/src/main/resources/nifi-web-security-context.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/web/web-security => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security}/src/test/java/org/apache/nifi/web/security/authorization/NiFiAuthorizationServiceTest.java (100%) rename nifi/{nar-bundles/framework-bundle/nar => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui}/.gitignore (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/pom.xml (99%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/java/org/apache/nifi/web/filter/IeEdgeHeader.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/java/org/apache/nifi/web/servlet/ConvertSvg.java (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/bulletin-board-min.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/bulletin-board.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/canvas-min.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/canvas.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/cluster-min.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/cluster.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/counters-min.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/counters.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/history-min.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/history.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/provenance-min.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/provenance.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/summary-min.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/summary.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/templates-min.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/templates.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/users-min.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/resources/filters/users.properties (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/pages/bulletin-board.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/pages/canvas.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/pages/cluster.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/pages/counters.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/pages/history.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/pages/message-page.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/pages/provenance.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/pages/summary.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/pages/templates.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/pages/users.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/banners-main.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/banners-utility.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/bulletin-board/bulletin-board-content.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/about-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/canvas-header.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/connection-configuration.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/connections-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/fill-color-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/flow-status.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/instantiate-template-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/label-configuration.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/navigation.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/new-port-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/new-process-group-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/new-processor-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/new-processor-property-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/new-remote-process-group-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/new-template-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/port-configuration.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/port-details.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/process-group-configuration.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/process-group-details.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/processor-configuration.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/registration.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/remote-port-configuration.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/remote-process-group-configuration.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/remote-process-group-details.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/remote-process-group-ports.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/secure-port-configuration.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/secure-port-details.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/settings-content.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/shell.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/cluster/cluster-content.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/cluster/node-details-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/connection-details.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/counters/counters-content.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/history/action-details-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/history/history-content.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/history/history-filter-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/history/history-purge-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/message-pane.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/ok-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/processor-details.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/provenance/lineage-query-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/provenance/provenance-content.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/provenance/provenance-event-details-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/provenance/provenance-query-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/provenance/provenance-search-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/status-history-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/summary/cluster-connection-summary-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/summary/cluster-input-port-summary-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/summary/cluster-output-port-summary-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/summary/cluster-processor-summary-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/summary/cluster-remote-process-group-summary-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/summary/summary-content.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/summary/system-diagnostics-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/summary/view-single-node-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/templates/templates-content.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/users/group-revoke-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/users/group-roles-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/users/user-delete-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/users/user-details-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/users/user-group-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/users/user-revoke-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/users/user-roles-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/users/users-content.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/partials/yes-no-dialog.jsp (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/WEB-INF/web.xml (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/about.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/banner.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/bulletin-board.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/canvas.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/cluster.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/connection-configuration.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/connection-details.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/counters.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/dialog.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/flow-status.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/graph.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/header.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/history.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/label-configuration.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/main.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/message-page.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/message-pane.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/navigation.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/new-processor-dialog.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/port-configuration.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/port-details.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/process-group-configuration.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/process-group-details.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/processor-configuration.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/processor-details.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/provenance.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/registration.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/remote-process-group-configuration.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/reset.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/settings.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/shell.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/status-history.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/summary.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/templates.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/css/users.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/addConnect.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bg-error.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgBannerFoot.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgBannerHead.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgBreadcrumbs.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgButton.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgButtonOver.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgButtonSelected.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgButtonSelectedOver.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgContextMenu.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgControlsInset.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgHeader.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgInputText.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgNifiLogo.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgNifiToolbar.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgNifiToolbarEdge.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgOutline.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgPanCenter.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgPanZoom.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgProcessGroupDetailsArea.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgProcessorStatArea.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgRemoteProcessGroupDetailsArea.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgSearchInput.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgShellClose.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgStatusPanel.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgTabContainer.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgTableHeader.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/bgToolbarBtnBorder.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/blueBtnBg-over.jpg (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/blueBtnBg.jpg (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonColor.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonCopy.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonDelete.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonDisable.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonEnable.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonGroup.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonNewProperty.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonOutline.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonPanDown.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonPanLeft.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonPanRight.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonPanUp.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonPaste.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonRefresh.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonRun.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonStop.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonTemplate.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonZoom100.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonZoomFit.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonZoomIn.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/buttonZoomOut.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/cluster.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/grayBtnBg-over.jpg (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/grayBtnBg.jpg (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/grid.gif (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/headerTabBg.gif (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconAdminUser.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconAlert.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconAlertDialog.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconAutoRefresh.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconBulletin.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconBulletinBoard.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconCenterView.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconChart.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconClose.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconCluster.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconClusterSmall.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconCollapseChildren.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconCollapseParents.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconColor.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconCommit.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconConfigure.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconConnect.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconConnection.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconCopy.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconCounter.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconDelete.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconDetails.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconDisable.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconDisconnect.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconEdit.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconEditButton.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconExpandChildren.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconExpandParents.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconExport.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconExportLineage.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconFlowSettings.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconFunnel.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconGoTo.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconHistory.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconInfo.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconInputPort.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconInputPortSmall.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconIsolatedProcessor.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconLineage.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconLoading.gif (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconNotSecure.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconOutputPort.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconOutputPortSmall.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconPaste.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconPopOut.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconPortNotTransmitting.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconPortRemoved.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconPortTransmitting.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconPrimary.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconProcessor.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconProvenance.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconRefresh.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconRemotePorts.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconRemoteProcessGroup.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconReporting.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconResetCounter.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconResize.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconRevoke.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconRun.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconSecure.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconSmallFunnel.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconSmallInputPort.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconSmallOutputPort.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconSmallProcessGroup.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconSmallProcessor.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconSmallRelationship.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconSmallRemoteProcessGroup.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconStop.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconTemplates.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconToFront.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconTransmissionActive.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconTransmissionInactive.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconTwistArrow.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconUndo.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/iconUsage.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/inputCheckbox.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/loadAnimation.gif (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/nifi16.ico (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/nifi_about.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/panelBg.jpg (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/portRemoved.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/portRunning.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/portStopped.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/spacer.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/starburst.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/tabBg.jpg (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/toolbarBg.gif (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/toolboxIconFunnel.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/toolboxIconInputPort.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/toolboxIconLabel.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/toolboxIconOutputPort.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/toolboxIconProcessGroup.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/toolboxIconProcessor.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/toolboxIconRemoteProcessGroup.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/toolboxIconTemplate.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/transmissionSwitchDisabled.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/transmissionSwitchEnabled.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/images/ungroup.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/codemirror/LICENSE (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/codemirror/addon/hint/show-hint.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/codemirror/lib/codemirror-compressed.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/codemirror/lib/codemirror.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/d3/LICENSE (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/d3/d3.min.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/combo/jquery.combo.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/combo/jquery.combo.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/combo/menuArrow.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/combo/menuArrowSmall.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/jquery-2.1.1.min.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/jquery.center.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/jquery.count.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/jquery.each.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/jquery.ellipsis.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/jquery.event.drag-2.2.min.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/jquery.form.min.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/jquery.tab.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/minicolors/jquery.minicolors.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/minicolors/jquery.minicolors.min.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/minicolors/jquery.minicolors.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/modal/jquery.modal.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/modal/jquery.modal.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/nfeditor/jquery.nfeditor.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/nfeditor/jquery.nfeditor.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/nfeditor/languages/nfel.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/nfeditor/languages/nfel.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/qtip2/jquery.qtip.min.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/qtip2/jquery.qtip.min.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/MIT-LICENSE.txt (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/css/images/collapse.gif (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/css/images/expand.gif (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/css/images/sort-asc.gif (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/css/images/sort-desc.gif (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/css/slick-default-theme.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/css/slick.grid.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/plugins/slick.autotooltips.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/plugins/slick.cellrangedecorator.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/plugins/slick.cellrangeselector.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/plugins/slick.cellselectionmodel.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/plugins/slick.rowselectionmodel.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/slick.core.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/slick.dataview.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/slick.editors.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/slick.formatters.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/slick.grid.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/tabbs/jquery.tabbs.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/tabbs/jquery.tabbs.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/ui-smoothness/images/animated-overlay.gif (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/ui-smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/ui-smoothness/images/ui-bg_flat_75_ffffff_40x100.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/ui-smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/ui-smoothness/images/ui-bg_glass_65_ffffff_1x400.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/ui-smoothness/images/ui-bg_glass_75_dadada_1x400.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/ui-smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/ui-smoothness/images/ui-bg_glass_95_fef1ec_1x400.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/ui-smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/ui-smoothness/images/ui-icons_222222_256x240.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/ui-smoothness/images/ui-icons_2e83ff_256x240.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/ui-smoothness/images/ui-icons_454545_256x240.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/ui-smoothness/images/ui-icons_888888_256x240.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/ui-smoothness/images/ui-icons_cd0a0a_256x240.png (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/ui-smoothness/jquery-ui-1.10.4.min.css (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/jquery/ui-smoothness/jquery-ui-1.10.4.min.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/json2.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/bulletin-board/nf-bulletin-board.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-actions.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-birdseye.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-header.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-toolbar.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-toolbox.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-utils.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-clipboard.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-connectable.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-connection-configuration.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-connection.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-context-menu.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-custom-processor-ui.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-draggable.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-funnel.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-go-to.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-graph-control.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-graph.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-label-configuration.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-label.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-port-configuration.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-port-details.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-port.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-process-group-configuration.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-process-group-details.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-process-group.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-processor-configuration.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-processor-property-combo-editor.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-processor-property-nfel-editor.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-processor-property-table.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-processor-property-text-editor.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-processor.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-registration.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-remote-process-group-configuration.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-remote-process-group-details.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-remote-process-group-ports.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-remote-process-group.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-search.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-secure-port-configuration.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-secure-port-details.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-selectable.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-settings.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-snippet.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-storage.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-toolbar-action.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/cluster/nf-cluster-table.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/cluster/nf-cluster.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/counters/nf-counters-table.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/counters/nf-counters.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/history/nf-history-model.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/history/nf-history-table.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/history/nf-history.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/nf-client.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/nf-common.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/nf-connection-details.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/nf-dialog.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/nf-namespace.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/nf-processor-details.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/nf-shell.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/nf-status-history.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/provenance/nf-provenance-lineage.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/provenance/nf-provenance-table.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/provenance/nf-provenance.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/summary/nf-cluster-search.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/summary/nf-summary-table.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/summary/nf-summary.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/templates/nf-templates-table.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/templates/nf-templates.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/users/nf-users-table.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/nifi-web-ui/src/main/webapp/js/nf/users/nf-users.js (100%) rename nifi/{nar-bundles/framework-bundle/framework/web => nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web}/pom.xml (70%) rename nifi/{nar-bundles/framework-bundle/framework => nifi-nar-bundles/nifi-framework-bundle/nifi-framework}/pom.xml (67%) rename nifi/{nar-bundles/framework-bundle => nifi-nar-bundles/nifi-framework-bundle}/pom.xml (80%) rename nifi/{nar-bundles/hadoop-bundle/nar => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hadoop-nar}/pom.xml (86%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/pom.xml (92%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/java/org/apache/nifi/processors/hadoop/AbstractHadoopProcessor.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/java/org/apache/nifi/processors/hadoop/CreateHadoopSequenceFile.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/java/org/apache/nifi/processors/hadoop/FlowFileStreamUnpackerSequenceFileWriter.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/java/org/apache/nifi/processors/hadoop/GetHDFS.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/java/org/apache/nifi/processors/hadoop/GetHDFSSequenceFile.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/java/org/apache/nifi/processors/hadoop/KeyValueReader.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/java/org/apache/nifi/processors/hadoop/PutHDFS.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/java/org/apache/nifi/processors/hadoop/SequenceFileWriterImpl.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/java/org/apache/nifi/processors/hadoop/TarUnpackerSequenceFileWriter.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/java/org/apache/nifi/processors/hadoop/ValueReader.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/java/org/apache/nifi/processors/hadoop/ZipUnpackerSequenceFileWriter.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/java/org/apache/nifi/processors/hadoop/util/ByteFilteringOutputStream.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/java/org/apache/nifi/processors/hadoop/util/InputStreamWritable.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/java/org/apache/nifi/processors/hadoop/util/OutputStreamWritable.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/java/org/apache/nifi/processors/hadoop/util/SequenceFileReader.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/java/org/apache/nifi/processors/hadoop/util/SequenceFileWriter.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/resources/META-INF/services/org.apache.nifi.processor.Processor (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/resources/docs/org.apache.nifi.processors.hadoop.CreateHadoopSequenceFile/index.html (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/resources/docs/org.apache.nifi.processors.hadoop.GetHDFS/index.html (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/resources/docs/org.apache.nifi.processors.hadoop.GetHDFSSequenceFile/index.html (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/main/resources/docs/org.apache.nifi.processors.hadoop.PutHDFS/index.html (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/test/java/org/apache/nifi/processors/hadoop/AbstractHadoopTest.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/test/java/org/apache/nifi/processors/hadoop/GetHDFSTest.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/test/java/org/apache/nifi/processors/hadoop/PutHDFSTest.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/test/java/org/apache/nifi/processors/hadoop/SimpleHadoopProcessor.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/test/java/org/apache/nifi/processors/hadoop/TestCreateHadoopSequenceFile.java (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/test/resources/core-site-broken.xml (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/test/resources/core-site.xml (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/test/resources/testdata/13545312236534130.tar (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/test/resources/testdata/13545423550275052.zip (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/test/resources/testdata/13545479542069498.pkg (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/test/resources/testdata/randombytes-1 (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/test/resources/testdata/randombytes-2 (100%) rename nifi/{nar-bundles/hadoop-bundle/hdfs-processors => nifi-nar-bundles/nifi-hadoop-bundle/nifi-hdfs-processors}/src/test/resources/testdata/randombytes-3 (100%) rename nifi/{nar-bundles/hadoop-bundle => nifi-nar-bundles/nifi-hadoop-bundle}/pom.xml (86%) rename nifi/{nar-bundles/hadoop-libraries-bundle/nar => nifi-nar-bundles/nifi-hadoop-libraries-bundle/nifi-hadoop-libraries-nar}/pom.xml (88%) rename nifi/{nar-bundles/hadoop-libraries-bundle => nifi-nar-bundles/nifi-hadoop-libraries-bundle}/pom.xml (88%) rename nifi/{nar-bundles/jetty-bundle => nifi-nar-bundles/nifi-jetty-bundle}/pom.xml (97%) rename nifi/{nar-bundles/kafka-bundle/kafka-nar => nifi-nar-bundles/nifi-kafka-bundle/nifi-kafka-nar}/pom.xml (87%) rename nifi/{nar-bundles/standard-bundle/jms-processors => nifi-nar-bundles/nifi-kafka-bundle/nifi-kafka-processors}/pom.xml (63%) rename nifi/{nar-bundles/kafka-bundle/kafka-processors => nifi-nar-bundles/nifi-kafka-bundle/nifi-kafka-processors}/src/main/java/org/apache/nifi/processors/kafka/GetKafka.java (100%) rename nifi/{nar-bundles/kafka-bundle/kafka-processors => nifi-nar-bundles/nifi-kafka-bundle/nifi-kafka-processors}/src/main/java/org/apache/nifi/processors/kafka/PutKafka.java (100%) rename nifi/{nar-bundles/kafka-bundle/kafka-processors => nifi-nar-bundles/nifi-kafka-bundle/nifi-kafka-processors}/src/main/resources/META-INF/services/org.apache.nifi.processor.Processor (100%) rename nifi/{nar-bundles/kafka-bundle/kafka-processors => nifi-nar-bundles/nifi-kafka-bundle/nifi-kafka-processors}/src/main/resources/docs/org.apache.nifi.processors.kafka.GetKafka/index.html (100%) rename nifi/{nar-bundles/kafka-bundle/kafka-processors => nifi-nar-bundles/nifi-kafka-bundle/nifi-kafka-processors}/src/main/resources/docs/org.apache.nifi.processors.kafka.PutKafka/index.html (100%) rename nifi/{nar-bundles/kafka-bundle/kafka-processors => nifi-nar-bundles/nifi-kafka-bundle/nifi-kafka-processors}/src/test/java/org/apache/nifi/processors/kafka/TestGetKafka.java (100%) rename nifi/{nar-bundles/kafka-bundle/kafka-processors => nifi-nar-bundles/nifi-kafka-bundle/nifi-kafka-processors}/src/test/java/org/apache/nifi/processors/kafka/TestPutKafka.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/nar => nifi-nar-bundles/nifi-kafka-bundle}/pom.xml (71%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/pom.xml (90%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/IndexConfiguration.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/PersistentProvenanceRepository.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/RepositoryConfiguration.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/StandardRecordReader.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/StandardRecordWriter.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/expiration/ExpirationAction.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/expiration/FileRemovalAction.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/lucene/DeleteIndexAction.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/lucene/DocsReader.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/lucene/FieldNames.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/lucene/IndexSearch.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/lucene/IndexingAction.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/lucene/LineageQuery.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/lucene/LuceneUtil.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/rollover/CompressionAction.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/rollover/RolloverAction.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/serialization/RecordReader.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/serialization/RecordReaders.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/serialization/RecordWriter.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/java/org/apache/nifi/provenance/serialization/RecordWriters.java (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/main/resources/META-INF/services/org.apache.nifi.provenance.ProvenanceEventRepository (100%) rename nifi/{nar-bundles/persistent-provenance-repository-bundle/persistent-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-persistent-provenance-repository}/src/test/java/org/apache/nifi/provenance/TestPersistentProvenanceRepository.java (100%) create mode 100644 nifi/nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-provenance-repository-nar/pom.xml rename nifi/{nar-bundles/volatile-provenance-repository-bundle/volatile-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository}/pom.xml (88%) rename nifi/{nar-bundles/volatile-provenance-repository-bundle/volatile-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository}/src/main/java/org/apache/nifi/provenance/VolatileProvenanceRepository.java (100%) rename nifi/{nar-bundles/volatile-provenance-repository-bundle/volatile-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository}/src/main/resources/META-INF/services/org.apache.nifi.provenance.ProvenanceEventRepository (100%) rename nifi/{nar-bundles/volatile-provenance-repository-bundle/volatile-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository}/src/test/java/org/apache/nifi/provenance/TestVolatileProvenanceRepository.java (100%) rename nifi/{nar-bundles/volatile-provenance-repository-bundle/volatile-provenance-repository => nifi-nar-bundles/nifi-provenance-repository-bundle/nifi-volatile-provenance-repository}/src/test/resources/nifi.properties (100%) rename nifi/{nar-bundles/monitor-threshold-bundle => nifi-nar-bundles/nifi-provenance-repository-bundle}/pom.xml (76%) rename nifi/{nar-bundles/standard-bundle/nar => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-nar}/pom.xml (76%) rename nifi/{nar-bundles/standard-bundle/standard-prioritizers => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-prioritizers}/pom.xml (94%) rename nifi/{nar-bundles/standard-bundle/standard-prioritizers => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-prioritizers}/src/main/java/org/apache/nifi/prioritizer/FirstInFirstOutPrioritizer.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-prioritizers => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-prioritizers}/src/main/java/org/apache/nifi/prioritizer/NewestFlowFileFirstPrioritizer.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-prioritizers => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-prioritizers}/src/main/java/org/apache/nifi/prioritizer/OldestFlowFileFirstPrioritizer.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-prioritizers => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-prioritizers}/src/main/java/org/apache/nifi/prioritizer/PriorityAttributePrioritizer.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-prioritizers => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-prioritizers}/src/main/resources/META-INF/services/org.apache.nifi.flowfile.FlowFilePrioritizer (100%) rename nifi/{nar-bundles/standard-bundle/standard-prioritizers => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-prioritizers}/src/test/java/org/apache/nifi/prioritizer/NewestFirstPrioritizerTest.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-prioritizers => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-prioritizers}/src/test/java/org/apache/nifi/prioritizer/OldestFirstPrioritizerTest.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-prioritizers => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-prioritizers}/src/test/java/org/apache/nifi/prioritizer/PriorityAttributePrioritizerTest.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/pom.xml (87%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/Base64EncodeContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/CompressContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/ControlRate.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/ConvertCharacterSet.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/DetectDuplicate.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/DistributeLoad.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/EncryptContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/EvaluateRegularExpression.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/EvaluateXPath.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/EvaluateXQuery.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/ExecuteStreamCommand.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/GenerateFlowFile.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/GetFTP.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/GetFile.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/GetFileTransfer.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/GetHTTP.java (100%) rename nifi/{nar-bundles/standard-bundle/jms-processors/src/main/java/org/apache/nifi/processors/jms => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard}/GetJMSQueue.java (94%) rename nifi/{nar-bundles/standard-bundle/jms-processors/src/main/java/org/apache/nifi/processors/jms => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard}/GetJMSTopic.java (94%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/GetSFTP.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/HashAttribute.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/HashContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/IdentifyMimeType.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/InvokeHTTP.java (100%) rename nifi/{nar-bundles/standard-bundle/jms-processors/src/main/java/org/apache/nifi/processors/jms => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard}/JmsConsumer.java (88%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/ListenHTTP.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/ListenUDP.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/LogAttribute.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/MergeContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/ModifyBytes.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/MonitorActivity.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/PostHTTP.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/PutEmail.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/PutFTP.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/PutFile.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/PutFileTransfer.java (100%) rename nifi/{nar-bundles/standard-bundle/jms-processors/src/main/java/org/apache/nifi/processors/jms => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard}/PutJMS.java (85%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/PutSFTP.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/ReplaceText.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/ReplaceTextWithMapping.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/RouteOnAttribute.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/RouteOnContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/ScanAttribute.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/ScanContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/SegmentContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/SplitContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/SplitText.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/SplitXml.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/TransformXml.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/UnpackContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/ValidateXml.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/servlets/ContentAcknowledgmentServlet.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/servlets/ListenHTTPServlet.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/util/Bin.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/util/BinManager.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/util/DocumentReaderCallback.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/util/FTPTransfer.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/util/FTPUtils.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/util/FileInfo.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/util/FileTransfer.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/util/FlowFileSessionWrapper.java (100%) rename nifi/{nar-bundles/standard-bundle/jms-processors/src/main/java/org/apache/nifi/processors/jms => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard}/util/JmsFactory.java (93%) rename nifi/{nar-bundles/standard-bundle/jms-processors/src/main/java/org/apache/nifi/processors/jms => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard}/util/JmsProperties.java (99%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/util/NLKBufferedReader.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/util/SFTPConnection.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/util/SFTPTransfer.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/util/SFTPUtils.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/util/UDPStreamConsumer.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/util/ValidatingBase64InputStream.java (100%) rename nifi/{nar-bundles/standard-bundle/jms-processors/src/main/java/org/apache/nifi/processors/jms => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard}/util/WrappedMessageConsumer.java (98%) rename nifi/{nar-bundles/standard-bundle/jms-processors/src/main/java/org/apache/nifi/processors/jms => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard}/util/WrappedMessageProducer.java (98%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/util/XmlElementNotifier.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/java/org/apache/nifi/processors/standard/util/XmlSplitterSaxParser.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/META-INF/services/org.apache.nifi.processor.Processor (93%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.Base64EncodeContent/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.CompressContent/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.ControlRate/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.ConvertCharacterSet/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.DetectDuplicate/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.DistributeLoad/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.EncryptContent/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.EvaluateRegularExpression/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.EvaluateXPath/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.EvaluateXQuery/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.ExecuteStreamCommand/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.GenerateFlowFile/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.GetFTP/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.GetFile/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.GetHTTP/index.html (100%) rename nifi/{nar-bundles/standard-bundle/jms-processors/src/main/resources/docs/org.apache.nifi.processors.jms.GetJMSQueue => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/resources/docs/org.apache.nifi.processors.standard.GetJMSQueue}/index.html (100%) rename nifi/{nar-bundles/standard-bundle/jms-processors/src/main/resources/docs/org.apache.nifi.processors.jms.GetJMSTopic => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/resources/docs/org.apache.nifi.processors.standard.GetJMSTopic}/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.GetSFTP/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.HashAttribute/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.HashContent/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.IdentifyMimeType/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.InvokeHTTP/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.ListenHTTP/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.ListenUDP/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.LogAttribute/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.MergeContent/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.ModifyBytes/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.MonitorActivity/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.PostHTTP/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.PutEmail/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.PutFTP/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.PutFile/index.html (100%) rename nifi/{nar-bundles/standard-bundle/jms-processors/src/main/resources/docs/org.apache.nifi.processors.jms.PutJMS => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/resources/docs/org.apache.nifi.processors.standard.PutJMS}/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.PutSFTP/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.ReplaceText/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.ReplaceTextWithMapping/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.RouteOnAttribute/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.RouteOnContent/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.ScanAttribute/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.ScanContent/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.SegmentContent/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.SplitContent/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.SplitText/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.SplitXml/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.TransformXml/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.UnpackContent/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/main/resources/docs/org.apache.nifi.processors.standard.ValidateXml/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/TestIngestAndUpdate.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/TestSuccess.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/HelloWorldServlet.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/RESTServiceContentModified.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestBase64EncodeContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestCompressContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestControlRate.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestConvertCharacterSet.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestDetectDuplicate.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestDistributeLoad.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestEncryptContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestEvaluateRegularExpression.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestEvaluateXPath.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestEvaluateXQuery.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestExecuteStreamCommand.java (95%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestGetFile.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestGetHTTP.java (100%) rename nifi/{nar-bundles/standard-bundle/jms-processors/src/test/java/org/apache/nifi/processors/jms/GetJMSQueueTest.java => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestGetJMSQueue.java} (95%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestHashAttribute.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestHashContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestIdentifyMimeType.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestInvokeHTTP.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestListenUDP.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestMergeContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestModifyBytes.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestMonitorActivity.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestReplaceText.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestReplaceTextLineByLine.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestReplaceTextWithMapping.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestRouteOnAttribute.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestRouteOnContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestScanAttribute.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestScanContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestSegmentContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestServer.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestSplitContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestSplitText.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestSplitXml.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestTransformXml.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestUnpackContent.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/TestValidateXml.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/java/org/apache/nifi/processors/standard/UserAgentTestingServlet.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/CharacterSetConversionSamples/Converted.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/CharacterSetConversionSamples/Converted2.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/CharacterSetConversionSamples/Original.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/CompressedData/SampleFile.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/CompressedData/SampleFile.txt.bz2 (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/CompressedData/SampleFile.txt.gz (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/CompressedData/SampleFile1.txt.bz2 (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/CompressedData/SampleFile1.txt.gz (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/CompressedData/SampleFileConcat.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/CompressedData/SampleFileConcat.txt.bz2 (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/ExecuteCommand/1000bytes.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/ExecuteCommand/TestIngestAndUpdate.jar (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/ExecuteCommand/TestSuccess.jar (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/ExecuteCommand/test.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/ScanAttribute/dictionary-with-empty-new-lines (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/ScanAttribute/dictionary-with-extra-info (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/ScanAttribute/dictionary1 (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestIdentifyMimeType/1.7z (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestIdentifyMimeType/1.jar (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestIdentifyMimeType/1.mdb (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestIdentifyMimeType/1.pdf (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestIdentifyMimeType/1.tar (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestIdentifyMimeType/1.txt.bz2 (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestIdentifyMimeType/1.txt.gz (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestIdentifyMimeType/1.xml (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestIdentifyMimeType/1.zip (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestIdentifyMimeType/bgBannerFoot.png (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestIdentifyMimeType/blueBtnBg.jpg (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestIdentifyMimeType/flowfilev1.tar (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestIdentifyMimeType/flowfilev3 (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestIdentifyMimeType/grid.gif (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestMergeContent/demarcate (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestMergeContent/foot (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestMergeContent/head (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestModifyBytes/noFooter.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestModifyBytes/noFooter_noHeader.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestModifyBytes/noHeader.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestModifyBytes/testFile.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextLineByLine/$1$1.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextLineByLine/BRue_cRue_RiRey.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextLineByLine/Blu$2e_clu$2e.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextLineByLine/D$d_h$d.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextLineByLine/Good.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextLineByLine/Spider.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextLineByLine/[DODO].txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextLineByLine/cu[$1]_Po[$1].txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextLineByLine/cu_Po.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextLineByLine/food.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextLineByLine/testFile.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextWithMapping/color-fruit-backreference-mapping.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextWithMapping/color-fruit-blank-mapping.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextWithMapping/color-fruit-escaped-dollar-mapping.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextWithMapping/color-fruit-excessive-backreference-mapping-simple.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextWithMapping/color-fruit-excessive-backreference-mapping.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextWithMapping/color-fruit-invalid-backreference-mapping.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextWithMapping/color-fruit-mapping.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextWithMapping/color-fruit-no-match-mapping.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextWithMapping/color-fruit-space-mapping.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextWithMapping/colors-without-dashes.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestReplaceTextWithMapping/colors.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestScanContent/helloWorld (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestScanContent/wellthengood-bye (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestSplitText/1.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestSplitText/2.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestSplitText/3.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestSplitText/4.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestSplitText/5.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestSplitText/6.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestSplitText/original.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestTransformXml/math.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestTransformXml/math.xml (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestTransformXml/math.xsl (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestTransformXml/tokens.csv (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestTransformXml/tokens.xml (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestTransformXml/tokens.xsl (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestUnpackContent/data.flowfilev2 (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestUnpackContent/data.flowfilev3 (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestUnpackContent/data.tar (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestUnpackContent/data.zip (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestUnpackContent/folder/cal.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestUnpackContent/folder/date.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestXml/XmlBundle.xsd (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestXml/fruit.xml (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestXml/subNode.xml (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestXml/xml-bundle-1 (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/TestXml/xml-snippet.xml (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/hello.txt (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/localhost-ks.jks (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/localhost-ts.jks (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/localhost.cer (100%) rename nifi/{nar-bundles/standard-bundle/standard-processors => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors}/src/test/resources/logback-test.xml (100%) rename nifi/{nar-bundles/standard-bundle/standard-reporting-tasks => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-reporting-tasks}/pom.xml (92%) rename nifi/{nar-bundles/standard-bundle/standard-reporting-tasks => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-reporting-tasks}/src/main/java/org/apache/nifi/controller/ControllerStatusReportingTask.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-reporting-tasks => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-reporting-tasks}/src/main/java/org/apache/nifi/controller/MonitorDiskUsage.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-reporting-tasks => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-reporting-tasks}/src/main/java/org/apache/nifi/controller/MonitorMemory.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-ganglia-reporter => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-reporting-tasks}/src/main/java/org/apache/nifi/reporting/ganglia/StandardGangliaReporter.java (100%) rename nifi/{nar-bundles/standard-bundle/standard-reporting-tasks => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-reporting-tasks}/src/main/resources/META-INF/services/org.apache.nifi.reporting.ReportingTask (89%) rename nifi/{nar-bundles/standard-bundle/standard-reporting-tasks => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-reporting-tasks}/src/main/resources/docs/org.apache.nifi.controller.ControllerStatusReportingTask/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-reporting-tasks => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-reporting-tasks}/src/main/resources/docs/org.apache.nifi.controller.MonitorDiskUsage/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-reporting-tasks => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-reporting-tasks}/src/main/resources/docs/org.apache.nifi.controller.MonitorMemory/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-ganglia-reporter => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-reporting-tasks}/src/main/resources/docs/org.apache.nifi.reporting.ganglia.StandardGangliaReporter/index.html (100%) rename nifi/{nar-bundles/standard-bundle/standard-reporting-tasks => nifi-nar-bundles/nifi-standard-bundle/nifi-standard-reporting-tasks}/src/test/java/org/apache/nifi/controller/TestMonitorDiskUsage.java (100%) rename nifi/{nar-bundles/standard-bundle => nifi-nar-bundles/nifi-standard-bundle}/pom.xml (66%) rename nifi/{nar-bundles/standard-services/distributed-cache-client-service-api => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-client-service-api}/pom.xml (89%) rename nifi/{nar-bundles/standard-services/distributed-cache-client-service-api => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-client-service-api}/src/main/java/org/apache/nifi/distributed/cache/client/Deserializer.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-client-service-api => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-client-service-api}/src/main/java/org/apache/nifi/distributed/cache/client/DistributedMapCacheClient.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-client-service-api => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-client-service-api}/src/main/java/org/apache/nifi/distributed/cache/client/DistributedSetCacheClient.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-client-service-api => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-client-service-api}/src/main/java/org/apache/nifi/distributed/cache/client/Serializer.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-client-service-api => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-client-service-api}/src/main/java/org/apache/nifi/distributed/cache/client/exception/DeserializationException.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-client-service-api => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-client-service-api}/src/main/java/org/apache/nifi/distributed/cache/client/exception/SerializationException.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-client-service => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service}/pom.xml (84%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-client-service => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service}/src/main/java/org/apache/nifi/distributed/cache/client/CommsSession.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-client-service => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service}/src/main/java/org/apache/nifi/distributed/cache/client/DistributedMapCacheClientService.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-client-service => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service}/src/main/java/org/apache/nifi/distributed/cache/client/DistributedSetCacheClientService.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-client-service => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service}/src/main/java/org/apache/nifi/distributed/cache/client/SSLCommsSession.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-client-service => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service}/src/main/java/org/apache/nifi/distributed/cache/client/StandardCommsSession.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-client-service => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service}/src/main/resources/META-INF/services/org.apache.nifi.controller.ControllerService (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-client-service => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service}/src/main/resources/docs/org.apache.nifi.distributed.cache.client.DistributedMapCacheClientService/index.html (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-client-service => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service}/src/main/resources/docs/org.apache.nifi.distributed.cache.client.DistributedSetCacheClientService/index.html (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-protocol => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-protocol}/pom.xml (89%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-protocol => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-protocol}/src/main/java/org/apache/nifi/distributed/cache/protocol/ProtocolHandshake.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-protocol => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-protocol}/src/main/java/org/apache/nifi/distributed/cache/protocol/exception/HandshakeException.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/pom.xml (82%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/AbstractCacheServer.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/CacheRecord.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/CacheServer.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/DistributedCacheServer.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/DistributedSetCacheServer.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/EvictionPolicy.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/SetCacheServer.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/map/DistributedMapCacheServer.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/map/MapCache.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/map/MapCacheRecord.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/map/MapCacheServer.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/map/MapPutResult.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/map/PersistentMapCache.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/map/SimpleMapCache.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/set/PersistentSetCache.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/set/SetCache.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/set/SetCacheRecord.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/set/SetCacheResult.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/java/org/apache/nifi/distributed/cache/server/set/SimpleSetCache.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/resources/META-INF/services/org.apache.nifi.controller.ControllerService (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/main/resources/docs/org.apache.nifi.distributed.cache.server.map.DistributedMapCacheServer/index.html (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/test/java/org/apache/nifi/distributed/cache/server/TestServerAndClient.java (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/test/resources/localhost-ks.jks (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-server => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-server}/src/test/resources/localhost-ts.jks (100%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle/distributed-cache-services-nar => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-services-nar}/pom.xml (80%) rename nifi/{nar-bundles/standard-services/distributed-cache-services-bundle => nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle}/pom.xml (76%) rename nifi/{nar-bundles/standard-services/load-distribution-service-api => nifi-nar-bundles/nifi-standard-services/nifi-load-distribution-service-api}/pom.xml (89%) rename nifi/{nar-bundles/standard-services/load-distribution-service-api => nifi-nar-bundles/nifi-standard-services/nifi-load-distribution-service-api}/src/main/java/org/apache/nifi/loading/LoadDistributionListener.java (100%) rename nifi/{nar-bundles/standard-services/load-distribution-service-api => nifi-nar-bundles/nifi-standard-services/nifi-load-distribution-service-api}/src/main/java/org/apache/nifi/loading/LoadDistributionService.java (100%) rename nifi/{nar-bundles/standard-services/ssl-context-bundle/nar => nifi-nar-bundles/nifi-standard-services/nifi-ssl-context-bundle/nifi-ssl-context-nar}/pom.xml (84%) rename nifi/{nar-bundles/standard-services/ssl-context-bundle/ssl-context-service => nifi-nar-bundles/nifi-standard-services/nifi-ssl-context-bundle/nifi-ssl-context-service}/pom.xml (90%) rename nifi/{nar-bundles/standard-services/ssl-context-bundle/ssl-context-service => nifi-nar-bundles/nifi-standard-services/nifi-ssl-context-bundle/nifi-ssl-context-service}/src/main/java/org/apache/nifi/ssl/StandardSSLContextService.java (100%) rename nifi/{nar-bundles/standard-services/ssl-context-bundle/ssl-context-service => nifi-nar-bundles/nifi-standard-services/nifi-ssl-context-bundle/nifi-ssl-context-service}/src/main/resources/META-INF/services/org.apache.nifi.controller.ControllerService (100%) rename nifi/{nar-bundles/standard-services/ssl-context-bundle/ssl-context-service => nifi-nar-bundles/nifi-standard-services/nifi-ssl-context-bundle/nifi-ssl-context-service}/src/main/resources/docs/org.apache.nifi.ssl.StandardSSLContextService/index.html (100%) rename nifi/{nar-bundles/standard-services/ssl-context-bundle/ssl-context-service => nifi-nar-bundles/nifi-standard-services/nifi-ssl-context-bundle/nifi-ssl-context-service}/src/test/java/org/apache/nifi/ssl/SSLContextServiceTest.java (100%) rename nifi/{nar-bundles/standard-services/ssl-context-bundle/ssl-context-service => nifi-nar-bundles/nifi-standard-services/nifi-ssl-context-bundle/nifi-ssl-context-service}/src/test/java/org/apache/nifi/ssl/TestProcessor.java (100%) rename nifi/{nar-bundles/standard-services/ssl-context-bundle/ssl-context-service => nifi-nar-bundles/nifi-standard-services/nifi-ssl-context-bundle/nifi-ssl-context-service}/src/test/resources/localhost-ks.jks (100%) rename nifi/{nar-bundles/standard-services/ssl-context-bundle/ssl-context-service => nifi-nar-bundles/nifi-standard-services/nifi-ssl-context-bundle/nifi-ssl-context-service}/src/test/resources/localhost-ts.jks (100%) rename nifi/{nar-bundles/standard-services/ssl-context-bundle => nifi-nar-bundles/nifi-standard-services/nifi-ssl-context-bundle}/pom.xml (84%) rename nifi/{nar-bundles/standard-services/ssl-context-service-api => nifi-nar-bundles/nifi-standard-services/nifi-ssl-context-service-api}/pom.xml (90%) rename nifi/{nar-bundles/standard-services/ssl-context-service-api => nifi-nar-bundles/nifi-standard-services/nifi-ssl-context-service-api}/src/main/java/org/apache/nifi/ssl/SSLContextService.java (100%) rename nifi/{nar-bundles/standard-services/standard-services-api-nar => nifi-nar-bundles/nifi-standard-services/nifi-standard-services-api-nar}/pom.xml (82%) rename nifi/{nar-bundles/standard-services => nifi-nar-bundles/nifi-standard-services}/pom.xml (73%) rename nifi/{nar-bundles/update-attribute-bundle/model => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-model}/pom.xml (89%) rename nifi/{nar-bundles/update-attribute-bundle/model => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-model}/src/main/java/org/apache/nifi/update/attributes/Action.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/model => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-model}/src/main/java/org/apache/nifi/update/attributes/Condition.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/model => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-model}/src/main/java/org/apache/nifi/update/attributes/Criteria.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/model => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-model}/src/main/java/org/apache/nifi/update/attributes/FlowFilePolicy.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/model => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-model}/src/main/java/org/apache/nifi/update/attributes/Rule.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/model => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-model}/src/main/java/org/apache/nifi/update/attributes/serde/CriteriaSerDe.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/nar => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-nar}/pom.xml (84%) rename nifi/{nar-bundles/update-attribute-bundle/processor => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-processor}/pom.xml (90%) rename nifi/{nar-bundles/update-attribute-bundle/processor => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-processor}/src/main/java/org/apache/nifi/processors/attributes/UpdateAttribute.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/processor => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-processor}/src/main/resources/META-INF/services/org.apache.nifi.processor.Processor (100%) rename nifi/{nar-bundles/update-attribute-bundle/processor => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-processor}/src/main/resources/docs/org.apache.nifi.processors.attributes.UpdateAttribute/index.html (100%) rename nifi/{nar-bundles/update-attribute-bundle/processor => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-processor}/src/test/java/org/apache/nifi/update/attributes/TestUpdateAttribute.java (100%) rename nifi/{nar-bundles/monitor-threshold-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/nb-configuration.xml (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/pom.xml (92%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/java/org/apache/nifi/update/attributes/UpdateAttributeModelFactory.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/java/org/apache/nifi/update/attributes/api/ObjectMapperResolver.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/java/org/apache/nifi/update/attributes/api/RuleResource.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/java/org/apache/nifi/update/attributes/dto/ActionDTO.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/java/org/apache/nifi/update/attributes/dto/ConditionDTO.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/java/org/apache/nifi/update/attributes/dto/DtoFactory.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/java/org/apache/nifi/update/attributes/dto/RuleDTO.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/java/org/apache/nifi/update/attributes/entity/ActionEntity.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/java/org/apache/nifi/update/attributes/entity/ConditionEntity.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/java/org/apache/nifi/update/attributes/entity/EvaluationContextEntity.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/java/org/apache/nifi/update/attributes/entity/RuleEntity.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/java/org/apache/nifi/update/attributes/entity/RulesEntity.java (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/webapp/META-INF/nifi-processor (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/webapp/WEB-INF/jsp/worksheet.jsp (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/webapp/WEB-INF/web.xml (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/webapp/css/main.css (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/webapp/images/bgInputText.png (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/webapp/images/buttonNew.png (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/webapp/images/iconDelete.png (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/webapp/images/iconInfo.png (100%) rename nifi/{nar-bundles/update-attribute-bundle/ui => nifi-nar-bundles/nifi-update-attribute-bundle/nifi-update-attribute-ui}/src/main/webapp/js/application.js (100%) rename nifi/{nar-bundles/update-attribute-bundle => nifi-nar-bundles/nifi-update-attribute-bundle}/pom.xml (78%) rename nifi/{nar-bundles => nifi-nar-bundles}/pom.xml (76%) diff --git a/README.md b/README.md index 2f5fad348e..c901e3697b 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ Apache NiFi is a dataflow system based on the concepts of flow-based programming ## Getting Started -- Build the nar-maven-plugin. Change directory to 'nar-maven-plugin' and +- Build the nifi-nar-maven-plugin. Change directory to 'nifi-nar-maven-plugin' and follow the directions found there. - Build nifi. Change directory to 'nifi' and follow the directions found there. diff --git a/nar-maven-plugin/DISCLAIMER b/nifi-nar-maven-plugin/DISCLAIMER similarity index 100% rename from nar-maven-plugin/DISCLAIMER rename to nifi-nar-maven-plugin/DISCLAIMER diff --git a/nar-maven-plugin/LICENSE b/nifi-nar-maven-plugin/LICENSE similarity index 100% rename from nar-maven-plugin/LICENSE rename to nifi-nar-maven-plugin/LICENSE diff --git a/nar-maven-plugin/NOTICE b/nifi-nar-maven-plugin/NOTICE similarity index 100% rename from nar-maven-plugin/NOTICE rename to nifi-nar-maven-plugin/NOTICE diff --git a/nar-maven-plugin/README.md b/nifi-nar-maven-plugin/README.md similarity index 100% rename from nar-maven-plugin/README.md rename to nifi-nar-maven-plugin/README.md diff --git a/nar-maven-plugin/pom.xml b/nifi-nar-maven-plugin/pom.xml similarity index 98% rename from nar-maven-plugin/pom.xml rename to nifi-nar-maven-plugin/pom.xml index 313e7fc85f..cb59c13c01 100644 --- a/nar-maven-plugin/pom.xml +++ b/nifi-nar-maven-plugin/pom.xml @@ -23,10 +23,9 @@ org.apache.nifi - nar-maven-plugin - 0.0.1-incubating-SNAPSHOT + nifi-nar-maven-plugin + 1.0.0-incubating-SNAPSHOT maven-plugin - Apache NiFi NAR Plugin Apache NiFi Nar Plugin. It is currently a part of the Apache Incubator. http://nifi.incubator.apache.org/maven-site/ diff --git a/nar-maven-plugin/src/main/java/nifi/NarMojo.java b/nifi-nar-maven-plugin/src/main/java/org/apache/nifi/NarMojo.java similarity index 99% rename from nar-maven-plugin/src/main/java/nifi/NarMojo.java rename to nifi-nar-maven-plugin/src/main/java/org/apache/nifi/NarMojo.java index 9b70ec00cf..da03182b92 100644 --- a/nar-maven-plugin/src/main/java/nifi/NarMojo.java +++ b/nifi-nar-maven-plugin/src/main/java/org/apache/nifi/NarMojo.java @@ -14,7 +14,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package nifi; +package org.apache.nifi; import java.io.File; import java.io.IOException; diff --git a/nar-maven-plugin/src/main/resources/META-INF/plexus/components.xml b/nifi-nar-maven-plugin/src/main/resources/META-INF/plexus/components.xml similarity index 96% rename from nar-maven-plugin/src/main/resources/META-INF/plexus/components.xml rename to nifi-nar-maven-plugin/src/main/resources/META-INF/plexus/components.xml index 0680d18e23..ad2c3cb8ee 100644 --- a/nar-maven-plugin/src/main/resources/META-INF/plexus/components.xml +++ b/nifi-nar-maven-plugin/src/main/resources/META-INF/plexus/components.xml @@ -29,7 +29,7 @@ org.apache.maven.plugins:maven-resources-plugin:testResources org.apache.maven.plugins:maven-compiler-plugin:testCompile org.apache.maven.plugins:maven-surefire-plugin:test - org.apache.nifi:nar-maven-plugin:nar + org.apache.nifi:nifi-nar-maven-plugin:nar org.apache.maven.plugins:maven-install-plugin:install org.apache.maven.plugins:maven-deploy-plugin:deploy diff --git a/nifi/README.md b/nifi/README.md index d9f7e53c00..e077c0c791 100644 --- a/nifi/README.md +++ b/nifi/README.md @@ -27,7 +27,7 @@ To build: - Execute 'mvn clean install' or for parallel build execute 'mvn -T 2.0C clean install' To start NiFi: -- Change directory to 'assembly'. In the target directory there should be a build of nifi. +- Change directory to 'nifi-assembly'. In the target directory there should be a build of nifi. - Unpack the build wherever you like or use the already unpacked build. '/bin/nifi.sh start' - Direct your browser to http://localhost:8080/nifi/ diff --git a/nifi/nar-bundles/kafka-bundle/kafka-processors/pom.xml b/nifi/nar-bundles/kafka-bundle/kafka-processors/pom.xml deleted file mode 100644 index d863954e03..0000000000 --- a/nifi/nar-bundles/kafka-bundle/kafka-processors/pom.xml +++ /dev/null @@ -1,76 +0,0 @@ - - - - - org.apache.nifi - kafka-bundle - 0.0.1-incubating-SNAPSHOT - - - 4.0.0 - - kafka-processors - jar - - kafka-processors - - - - org.apache.nifi - nifi-api - - - org.apache.nifi - nifi-processor-utils - - - org.apache.nifi - nifi-utils - - - org.apache.kafka - kafka_2.8.2 - 0.8.1 - - - - javax.jms - jms - - - com.sun.jdmk - jmxtools - - - com.sun.jmx - jmxri - - - - - - org.apache.nifi - nifi-mock - test - - - org.slf4j - slf4j-simple - test - - - diff --git a/nifi/nar-bundles/kafka-bundle/pom.xml b/nifi/nar-bundles/kafka-bundle/pom.xml deleted file mode 100644 index 8c95ea800b..0000000000 --- a/nifi/nar-bundles/kafka-bundle/pom.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - org.apache.nifi - nar-bundle-parent - 0.0.1-incubating-SNAPSHOT - - - 4.0.0 - - kafka-bundle - pom - - kafka-bundle - - - kafka-processors - kafka-nar - - - diff --git a/nifi/nar-bundles/monitor-threshold-bundle/nar/pom.xml b/nifi/nar-bundles/monitor-threshold-bundle/nar/pom.xml deleted file mode 100644 index 3b509043e9..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/nar/pom.xml +++ /dev/null @@ -1,39 +0,0 @@ - - - 4.0.0 - - org.apache.nifi - monitor-threshold-bundle - 0.0.1-incubating-SNAPSHOT - - - monitor-threshold-nar - 0.0.1-incubating-SNAPSHOT - MonitorThreshold-NAR - nar - - - - org.apache.nifi - monitor-threshold-processor - - - org.apache.nifi - monitor-threshold-ui - war - - - diff --git a/nifi/nar-bundles/monitor-threshold-bundle/processor/pom.xml b/nifi/nar-bundles/monitor-threshold-bundle/processor/pom.xml deleted file mode 100644 index be840a0cca..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/processor/pom.xml +++ /dev/null @@ -1,45 +0,0 @@ - - - - 4.0.0 - - org.apache.nifi - monitor-threshold-bundle - 0.0.1-incubating-SNAPSHOT - - monitor-threshold-processor - MonitorThreshold-Processor - Processor that counts files with particular attribute values and notifies when a count exceeds a user specified threshold - - - org.apache.nifi - nifi-api - - - org.apache.nifi - nifi-utils - - - org.apache.nifi - nifi-processor-utils - - - org.apache.nifi - nifi-mock - test - - - diff --git a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/main/java/org/apache/nifi/processors/monitor/MonitorThreshold.java b/nifi/nar-bundles/monitor-threshold-bundle/processor/src/main/java/org/apache/nifi/processors/monitor/MonitorThreshold.java deleted file mode 100644 index ec071083a0..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/main/java/org/apache/nifi/processors/monitor/MonitorThreshold.java +++ /dev/null @@ -1,904 +0,0 @@ -/* - * 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.processors.monitor; - -import java.io.File; -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.ObjectInputStream; -import java.io.ObjectOutputStream; -import java.io.Serializable; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Collection; -import java.util.Collections; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.TimeZone; -import java.util.concurrent.ConcurrentHashMap; -import java.util.concurrent.atomic.AtomicReference; -import java.util.concurrent.locks.Lock; -import java.util.concurrent.locks.ReentrantReadWriteLock; -import java.util.regex.Pattern; - -import org.apache.nifi.components.PropertyDescriptor; -import org.apache.nifi.components.ValidationContext; -import org.apache.nifi.components.ValidationResult; -import org.apache.nifi.util.file.FileUtils; -import org.apache.nifi.flowfile.FlowFile; -import org.apache.nifi.logging.ProcessorLog; -import org.apache.nifi.processor.AbstractProcessor; -import org.apache.nifi.processor.ProcessContext; -import org.apache.nifi.processor.ProcessSession; -import org.apache.nifi.processor.ProcessorInitializationContext; -import org.apache.nifi.processor.Relationship; -import org.apache.nifi.processor.annotation.CapabilityDescription; -import org.apache.nifi.processor.annotation.OnStopped; -import org.apache.nifi.processor.annotation.Tags; -import org.apache.nifi.processor.annotation.TriggerWhenEmpty; -import org.apache.nifi.processor.exception.ProcessException; -import org.apache.nifi.processor.util.StandardValidators; -import org.apache.nifi.util.Tuple; - -/** - * This processor has an advanced user interface that is used to specify - * attributes that should be monitored, as well as thresholds for individual - * values that are expected to appear in the monitored attributes. - */ - -/* Because this processor maintains counts (in memory) that must be persisted - * to disk according to a prescribed schedule (See OPT_COUNT_RESET_TIME/OPT_COUNT_RESET_MINUTES - * properties), this processor must be timer driven. This processor cannot be event driven. - * Using @TriggerWhenEmpty ensures that the processor will be timer driven, and that its - * onTrigger method will be called even when no Flowfiles are in an incoming queue. - */ -@TriggerWhenEmpty -@Tags({"monitor", "threshold", "throttle", "limit", "counts", "size", "bytes", "files", "attribute", "values", "notify"}) -@CapabilityDescription("Examines values found in selected FlowFile attributes and " - + "maintains counts of the number of times the values have been encountered." - + "The counts are then used to check against user defined thresholds.") -public class MonitorThreshold extends AbstractProcessor { - - // default property values - public static final String DEFAULT_THRESHOLDS_KEY = "Default"; - public static final String DEFAULT_COUNTS_PERSISTENCE_FILE_PREFIX = "conf/MonitorThreshold"; - public static final int DEFAULT_SAVE_COUNTS_FREQ_SECS = 30; - public static final String DEFAULT_DELIMITER_TO_USE_FOR_COUNTS_ATTRIBUTES = "."; - public static final String DEFAULT_ADD_ATRIBUTES_WHEN_THRESHOLD_EXCEEDED = "true"; - - public static final String ALWAYS = "Always"; - public static final String ONLY_WHEN_THRESHOLD_EXCEEDED = "Only When Threshold Exceeded"; - public static final String NEVER = "Never"; - public static final String DEFAULT_ADD_ATRIBUTES = ONLY_WHEN_THRESHOLD_EXCEEDED; - - // constants/variables, used for clearing/persisting counts - public static final long MILLIS_IN_MINUTE = 60000L; - public static final long MILLIS_IN_HOUR = MILLIS_IN_MINUTE * 60; - public static final String TIME_REGEX = "^((?:[0-1]?[0-9])|(?:[2][0-3])):([0-5]?[0-9]):([0-5]?[0-9])"; - public static final Pattern TIME_PATTERN = Pattern.compile(TIME_REGEX); - - private Long timeCountsLastCleared = System.currentTimeMillis(); - private Long timeCountsLastSaved = null; - - // other constants - public static final String NUM_APPLICABLE_THRESHOLDS_KEY = "numApplicableThresholds"; - public static final String NUM_THRESHOLDS_EXCEEDED_KEY = "numThresholdsExceeded"; - - public static final String FILE_COUNT_PREFIX = "fileCount"; - public static final String FILE_THRESHOLD_PREFIX = "fileThreshold"; - - public static final String BYTE_COUNT_PREFIX = "byteCount"; - public static final String BYTE_THRESHOLD_PREFIX = "byteThreshold"; - - public static final String AGGREGATE_COUNTS_WHEN_NO_THRESHOLD_PROVIDED_PROPERTY = "Aggregate Counts When No Threshold Provided"; - public static final String COUNT_RESET_TIME_PROPERTY = "Count Reset Time"; - public static final String MINUTES_TO_WAIT_BEFORE_RESETTING_COUNTS_PROPERTY = "Minutes to Wait Before Resetting Counts"; - public static final String ADD_ATTRIBUTES_PROPERTY = "Add Attributes"; - public static final String MAX_ATTRIBUTE_PAIRS_TO_ADD_PROPERTY = "Maximum Attribute Pairs to Add When Multiple Thresholds Exceeded"; - public static final String ATTRIBUTE_TO_USE_FOR_COUNTING_BYTES_PROPERTY = "Attribute to use for Counting Bytes"; - public static final String DELIMITER_TO_USE_FOR_COUNTS_ATTRIBUTES_PROPERTY = "Delimiter to use for Counts Attributes"; - public static final String STANDARD_FLOWFILE_FILESIZE_PROPERTY = "fileSize"; - public static final String FREQUENCY_TO_SAVE_COUNTS_PROPERTY = "Frequency to Save Counts (seconds)"; - public static final String PREFIX_FOR_COUNTS_PERSISTENCE_FILE_PROPERTY = "Prefix for Counts Persistence File"; - - // locks for concurrency protection - private final ReentrantReadWriteLock rwLock = new ReentrantReadWriteLock(); - private final Lock readLock = rwLock.readLock(); - private final Lock writeLock = rwLock.writeLock(); - - // file and byte counts, etc... - private ConcurrentHashMap> counts = null; // Guarded by rwLock - private Map> thresholds; // Guarded by rwLock - - // optional properties - private List properties; - - public static final PropertyDescriptor OPT_AGGREGATE_COUNTS_WHEN_NO_THRESHOLD_PROVIDED = new PropertyDescriptor.Builder() - .name(AGGREGATE_COUNTS_WHEN_NO_THRESHOLD_PROVIDED_PROPERTY) - .description("When a value (in a monitored attribute) is encountered, but no thresholds have been specified " - + "for that value, how should counts be maintained? " - + "If this property is true (default), two behaviors are adopted. " - + "First, counts for ALL non-threshold values are aggregated into a single count. " - + "Second, when a non-threshold value is encountered, the aggregate count will be compared to the default threshold." - + "If this property is false, the behaviors change, as follows. " - + "Separate, individual counts are maintained for each non-threshold, value that is encountered. " - + "When a non-threshold value is encountered, it's unique count will be compared with the default threshold. " - + "NOTE: Counts are never maintained for non-monitored attributes. ") - .required(false) - .addValidator(StandardValidators.BOOLEAN_VALIDATOR) - .defaultValue("true") - .allowableValues("true", "false") - .expressionLanguageSupported(false) - .build(); - - public static final PropertyDescriptor OPT_COUNT_RESET_TIME = new PropertyDescriptor.Builder() - .name(COUNT_RESET_TIME_PROPERTY) - .description("The time (24-hour clock, hh:mm:ss format, GMT Timezone) when the byte and file counts will be reset to zero. " - + "Note: To prevent counts from increasing forever, you must specify either a '" + COUNT_RESET_TIME_PROPERTY + "' or '" + MINUTES_TO_WAIT_BEFORE_RESETTING_COUNTS_PROPERTY + "'") - .required(false) - .addValidator(StandardValidators.createRegexMatchingValidator(TIME_PATTERN)) - .expressionLanguageSupported(false) - .build(); - - public static final PropertyDescriptor OPT_COUNT_RESET_MINUTES = new PropertyDescriptor.Builder() - .name(MINUTES_TO_WAIT_BEFORE_RESETTING_COUNTS_PROPERTY) - .description("Minutes to delay count reset, beginning at '" + COUNT_RESET_TIME_PROPERTY + "', if provided. " - + "If '" + COUNT_RESET_TIME_PROPERTY + "' is not provided, then the minutes to delay are counted from the last reset. " - + "(Last reset is initially the time when the processor is created (added to a flow).)") - .required(false) - .addValidator(StandardValidators.POSITIVE_INTEGER_VALIDATOR) - .expressionLanguageSupported(false) - .build(); - - public static final PropertyDescriptor OPT_ADD_ATTRIBUTES = new PropertyDescriptor.Builder() - .name(ADD_ATTRIBUTES_PROPERTY) - .description("Setting this property to'" + ONLY_WHEN_THRESHOLD_EXCEEDED + "' will cause two additional attributes to be added to" - + "FlowFiles for every threshold that is exceeded. For example, if a file count threshold is exceeded, " - + " a fileCount.attributeName.value and a fileThreshold.attributeName.value will be added to the FlowFile. " - + "Setting this property to'" + ALWAYS + "' will cause attributes to be added, no matter whether a threshold is exceeded." - + "Note 1: Attributes are only added if a monitored attribute is present on the FlowFile, no matter if '" + "' " + ADD_ATTRIBUTES_PROPERTY + "' is set to '" + ALWAYS + "'. " - + "Note 2: This processor makes a log entry for every threshold that is exceeded, no matter the value of this property. ") - .required(false) - .defaultValue(DEFAULT_ADD_ATRIBUTES) - .allowableValues(ALWAYS, ONLY_WHEN_THRESHOLD_EXCEEDED, NEVER) - .expressionLanguageSupported(false) - .build(); - - public static final PropertyDescriptor OPT_MAX_ATTRIBUTE_PAIRS_TO_ADD_WHEN_MULTIPLE_THRESHOLD_EXCEEDED = new PropertyDescriptor.Builder() - .name(MAX_ATTRIBUTE_PAIRS_TO_ADD_PROPERTY) - .description("Controls/limits the number of FlowFile attributes that are added when " - + "multiple thresholds are exceeded. Recall that when a threshold is exceeded, " - + "a pair of two attributes are added to the FlowFile, one is the current count and " - + "the other is the threshold. If 100 thresholds are exceeded, then 200 " - + "attributes will be added to the FlowFile. Setting this property to zero means add " - + "all count/threshold pairs that were exceeded. Any setting greater than zero indicates " - + "how many count/threshold pairs to add when multiple thresholds are exceeded. " - + "Only non-negative settings are supported. The default is 0. " - + "In effect only when '" + ADD_ATTRIBUTES_PROPERTY + "' is '" + ONLY_WHEN_THRESHOLD_EXCEEDED + "'." - + "Setting " + ADD_ATTRIBUTES_PROPERTY + " to" + " '" + ALWAYS + "' or '" + NEVER - + "' causes '" + MAX_ATTRIBUTE_PAIRS_TO_ADD_PROPERTY + "' to be ignored.") - .required(false) - .addValidator(StandardValidators.NON_NEGATIVE_INTEGER_VALIDATOR) - .defaultValue("0") - .expressionLanguageSupported(false) - .build(); - - public static final PropertyDescriptor OPT_DELIMITER_TO_USE_FOR_COUNTS_ATTRIBUTES = new PropertyDescriptor.Builder() - .name(DELIMITER_TO_USE_FOR_COUNTS_ATTRIBUTES_PROPERTY) - .description("The delimiter to use for naming threshold exceeded attributes," - + "e.g., fileCount.attributeName.value. Defaults to \'.\'") - .required(false) - .addValidator(StandardValidators.NON_EMPTY_VALIDATOR) - .defaultValue(DEFAULT_DELIMITER_TO_USE_FOR_COUNTS_ATTRIBUTES) - .expressionLanguageSupported(false) - .build(); - - public static final PropertyDescriptor OPT_ATTRIBUTE_TO_USE_FOR_COUNTING_BYTES = new PropertyDescriptor.Builder() - .name(ATTRIBUTE_TO_USE_FOR_COUNTING_BYTES_PROPERTY) - .description("Setting this property allows a FlowFile attribute to be used for counting bytes, " - + "in place of the actual fileSize. Note that the attribute named by this property " - + "must contain only numeric, non-negative integer values for each FlowFile. " - + "Non-numeric or negative values that are encountered will be ignored, causing the actual fileSize " - + "to be used instead.") - .required(false) - .addValidator(StandardValidators.NON_EMPTY_VALIDATOR) - .defaultValue(STANDARD_FLOWFILE_FILESIZE_PROPERTY) - .expressionLanguageSupported(false) - .build(); - - public static final PropertyDescriptor OPT_FREQUENCY_TO_SAVE_COUNTS_SECS = new PropertyDescriptor.Builder() - .name(FREQUENCY_TO_SAVE_COUNTS_PROPERTY) - .description("How often the counts should be written to disk. The default value is 30 seconds.") - .required(false) - .addValidator(StandardValidators.POSITIVE_INTEGER_VALIDATOR) - .defaultValue("30") - .expressionLanguageSupported(false) - .build(); - - public static final PropertyDescriptor OPT_COUNTS_PERSISTENCE_FILE_PREFIX = new PropertyDescriptor.Builder() - .name(PREFIX_FOR_COUNTS_PERSISTENCE_FILE_PROPERTY) - .description("The prefix for the file that is saved (to disk) to maintain counts across NIFI restarts. " - + "By default, the value is " + DEFAULT_COUNTS_PERSISTENCE_FILE_PREFIX + ". The actual name of the counts file will " - + "be this value plus \"-XXXX.counts\" where XXXX is the processor ID.") - .required(false) - .addValidator(StandardValidators.NON_EMPTY_VALIDATOR) - .defaultValue(DEFAULT_COUNTS_PERSISTENCE_FILE_PREFIX) - .expressionLanguageSupported(false) - .build(); - - // relationships - private final AtomicReference> relationships = new AtomicReference<>(); - public static final String SUCCESS = "success"; - public static final Relationship RELATIONSHIP_SUCCESS = new Relationship.Builder() - .name(SUCCESS) - .description("All FlowFiles follow this relationship, unless there is a problem with the FlowFile.") - .build(); - - public static final String FAILURE = "failure"; - public static final Relationship RELATIONSHIP_FAILURE = new Relationship.Builder() - .name(FAILURE) - .description("FlowFiles follow this relationship path if there is a problem with the FlowFile, or if there is a unrecoverable configuration error.") - .build(); - - @Override - public Collection customValidate(ValidationContext validationContext) { - final Collection problems = new ArrayList<>(); - - String countResetTime = validationContext.getProperty(OPT_COUNT_RESET_TIME).getValue(); - String minutesToWaitBeforeResettingCounts = validationContext.getProperty(OPT_COUNT_RESET_MINUTES).getValue(); - - if (countResetTime == null && minutesToWaitBeforeResettingCounts == null) { - - ValidationResult rolloverTimeOrMinutesRequired = new ValidationResult.Builder() - .subject("Invalid processor configuration.") - .explanation("To prevent counts from increasing forever, you must specify either a '" + COUNT_RESET_TIME_PROPERTY + "' or '" + MINUTES_TO_WAIT_BEFORE_RESETTING_COUNTS_PROPERTY + "'.") - .input(COUNT_RESET_TIME_PROPERTY + ": " + countResetTime + " " - + MINUTES_TO_WAIT_BEFORE_RESETTING_COUNTS_PROPERTY + ": " + minutesToWaitBeforeResettingCounts) - .valid(false) - .build(); - - problems.add(rolloverTimeOrMinutesRequired); - } - - int maxPairsToAdd = Integer.parseInt(validationContext.getProperty(OPT_MAX_ATTRIBUTE_PAIRS_TO_ADD_WHEN_MULTIPLE_THRESHOLD_EXCEEDED).getValue()); - if (maxPairsToAdd < 0) { - ValidationResult maxPairsToAddCannotBeNegative = new ValidationResult.Builder() - .subject("Invalid processor configuration.") - .explanation(MAX_ATTRIBUTE_PAIRS_TO_ADD_PROPERTY + " cannot be negative.") - .input(MAX_ATTRIBUTE_PAIRS_TO_ADD_PROPERTY + ": " + maxPairsToAdd) - .valid(false) - .build(); - - problems.add(maxPairsToAddCannotBeNegative); - } - return problems; - } - - @Override - protected void init(final ProcessorInitializationContext context) { - final List properties = new ArrayList<>(); - properties.add(OPT_AGGREGATE_COUNTS_WHEN_NO_THRESHOLD_PROVIDED); - properties.add(OPT_COUNT_RESET_TIME); - properties.add(OPT_COUNT_RESET_MINUTES); - properties.add(OPT_ADD_ATTRIBUTES); - properties.add(OPT_MAX_ATTRIBUTE_PAIRS_TO_ADD_WHEN_MULTIPLE_THRESHOLD_EXCEEDED); - properties.add(OPT_DELIMITER_TO_USE_FOR_COUNTS_ATTRIBUTES); - properties.add(OPT_ATTRIBUTE_TO_USE_FOR_COUNTING_BYTES); - properties.add(OPT_FREQUENCY_TO_SAVE_COUNTS_SECS); - properties.add(OPT_COUNTS_PERSISTENCE_FILE_PREFIX); - this.properties = Collections.unmodifiableList(properties); - - final Set relationships = new HashSet<>(); - relationships.add(RELATIONSHIP_SUCCESS); - relationships.add(RELATIONSHIP_FAILURE); - this.relationships.set(Collections.unmodifiableSet(relationships)); - } - - @Override - protected List getSupportedPropertyDescriptors() { - return properties; - } - - @Override - public Set getRelationships() { - return relationships.get(); - } - - @OnStopped - public void processorTasksStopped() { - writeLock.lock(); - try { - // Since the user can change thresholds when the processor is stopped, - // force the user thresholds to be reloaded on the next call to onTrigger() - this.thresholds = null; - } finally { - writeLock.unlock(); - } - } - - @Override - public void onTrigger(final ProcessContext context, final ProcessSession session) throws ProcessException { - final ProcessorLog logger = getLogger(); - //ProvenanceReporter provenanceReporter = session.getProvenanceReporter(); - - getCounts(context, session, logger); - - if (shouldClearCounts(context)) { - clearCounts(context, session, logger); - } - - if (shouldSaveCounts(context)) { - saveCounts(getCountsFile(context), logger); - } - - FlowFile flowFile = null; - try { - final Map> thresholds = getThresholds(context, logger); - if (thresholds == null) { - logger.error(this + " unable to read thresholds."); - return; - } - - flowFile = session.get(); - if (flowFile == null) { - return; - } - - // prep to loop through all thresholds for this FlowFile - final long fileSize = getFileSize(context, logger, flowFile); - final String delimiter = context.getProperty(OPT_DELIMITER_TO_USE_FOR_COUNTS_ATTRIBUTES).getValue(); - - boolean aggregateCountsWhenNoThresholdProvided = Boolean.parseBoolean(context.getProperty(OPT_AGGREGATE_COUNTS_WHEN_NO_THRESHOLD_PROVIDED).getValue()); - String addAttributes = context.getProperty(OPT_ADD_ATTRIBUTES).getValue(); - int maxPairsToAdd = Integer.parseInt(context.getProperty(OPT_MAX_ATTRIBUTE_PAIRS_TO_ADD_WHEN_MULTIPLE_THRESHOLD_EXCEEDED).getValue()); - int countOfPairsAdded = 0; - final List reasonsThresholdsExceeded = new ArrayList<>(); - long numApplicableThresholds = 0, numThresholdsExceeded = 0; - - // loop through all thresholds for this FlowFile - for (final String attributeName : thresholds.keySet()) { //user configured thresholds - String attributeValue = flowFile.getAttribute(attributeName); - if (attributeValue == null) { // attribute does not exist on this FlowFile - continue; // check for any remaining thresholds that might apply to attributes on this FlowFile - } - - CompareRecord threshold = thresholds.get(attributeName).get(attributeValue); //has (user configured) thresholds only, not actual counts - CompareRecord countsForAttrValue = null; - if (threshold == null) { //user did not specify a threshold for the attributeValue found in the FlowFile - threshold = thresholds.get(attributeName).get(DEFAULT_THRESHOLDS_KEY); //use default thresholds - if (aggregateCountsWhenNoThresholdProvided) { - // ensure there is a default count record - countsForAttrValue = getCountsForAttributeValue(getCountsForAttribute(attributeName), DEFAULT_THRESHOLDS_KEY, attributeName, threshold); // if no default count record available, one will be created - } else { - countsForAttrValue = getCountsForAttributeValue(getCountsForAttribute(attributeName), attributeValue, attributeName, threshold); // if no count record available, one will be created - } - } else { // there is a user specified threshold - countsForAttrValue = getCountsForAttributeValue(getCountsForAttribute(attributeName), attributeValue, attributeName, threshold); // if no count record available, one will be created - } - // update internal (processor) counts - countsForAttrValue.addToFlowFileCounts(fileSize); - - String attributeNameAndValue = delimiter + countsForAttrValue.getAttributeName() + delimiter + attributeValue; - if (addAttributes.equals(ALWAYS)) { - flowFile = session.putAttribute(flowFile, FILE_COUNT_PREFIX + attributeNameAndValue, Integer.toString(countsForAttrValue.getFileCount())); - flowFile = session.putAttribute(flowFile, FILE_THRESHOLD_PREFIX + attributeNameAndValue, Integer.toString(countsForAttrValue.getFileThreshold())); - countOfPairsAdded++; - flowFile = session.putAttribute(flowFile, BYTE_COUNT_PREFIX + attributeNameAndValue, Long.toString(countsForAttrValue.getByteCount())); - flowFile = session.putAttribute(flowFile, BYTE_THRESHOLD_PREFIX + attributeNameAndValue, Long.toString(countsForAttrValue.getByteThreshold())); - countOfPairsAdded++; - } - - // check thresholds - if (countsForAttrValue.fileThresholdExceeded()) { - numThresholdsExceeded++; - reasonsThresholdsExceeded.add(countsForAttrValue.getReasonFileLimitExceeded()); - if (addAttributes.equals(ONLY_WHEN_THRESHOLD_EXCEEDED) && (maxPairsToAdd >= 0) && ((maxPairsToAdd == 0) || (countOfPairsAdded < maxPairsToAdd))) { - //String attributeNameAndValue = delimiter + countsForAttrValue.getAttributeName() + delimiter + attributeValue; - flowFile = session.putAttribute(flowFile, FILE_COUNT_PREFIX + attributeNameAndValue, Integer.toString(countsForAttrValue.getFileCount())); - flowFile = session.putAttribute(flowFile, FILE_THRESHOLD_PREFIX + attributeNameAndValue, Integer.toString(countsForAttrValue.getFileThreshold())); - countOfPairsAdded++; - } - } - if (countsForAttrValue.byteThresholdExceeded()) { - numThresholdsExceeded++; - reasonsThresholdsExceeded.add(countsForAttrValue.getReasonByteLimitExceeded()); - if (addAttributes.equals(ONLY_WHEN_THRESHOLD_EXCEEDED) && (maxPairsToAdd >= 0) && ((maxPairsToAdd == 0) || (countOfPairsAdded < maxPairsToAdd))) { - //String attributeNameAndValue = delimiter + countsForAttrValue.getAttributeName() + delimiter + attributeValue; - flowFile = session.putAttribute(flowFile, BYTE_COUNT_PREFIX + attributeNameAndValue, Long.toString(countsForAttrValue.getByteCount())); - flowFile = session.putAttribute(flowFile, BYTE_THRESHOLD_PREFIX + attributeNameAndValue, Long.toString(countsForAttrValue.getByteThreshold())); - countOfPairsAdded++; - } - } - - numApplicableThresholds = numApplicableThresholds + 2; // the UI requires that both a file and byte threshold be supplied - - } // end loop through all attributes with thresholds - - if (numThresholdsExceeded > 0) { - logLimitsWereExceeded(logger, flowFile, reasonsThresholdsExceeded); - } - - flowFile = session.putAttribute(flowFile, NUM_APPLICABLE_THRESHOLDS_KEY, Long.toString(numApplicableThresholds)); - flowFile = session.putAttribute(flowFile, NUM_THRESHOLDS_EXCEEDED_KEY, Long.toString(numThresholdsExceeded)); - - session.transfer(flowFile, RELATIONSHIP_SUCCESS); - - } catch (final Throwable t) { - if (flowFile != null) { - logger.warn("Failed to process " + flowFile + ". Sending to failure relationship.", t); - session.transfer(flowFile, RELATIONSHIP_FAILURE); - } - } - } //end onTrigger(...) - - private void logLimitsWereExceeded(ProcessorLog logger, final FlowFile flowFile, final List reasonsThresholdExceeded) { - final StringBuilder sb = new StringBuilder(); - - sb.append("Threshold(s) Exceeded for: ").append(flowFile); - int numberOfReasons = reasonsThresholdExceeded.size(); - for (int i = 0; i < numberOfReasons; i++) { - sb.append(reasonsThresholdExceeded.get(i)); - } - logger.info("\n" + sb.toString()); - } - - private long getFileSize(final ProcessContext context, final ProcessorLog logger, FlowFile flowFile) { - - long fileSize = flowFile.getSize(); - - String attributeToUseForCountingBytes = context.getProperty(OPT_ATTRIBUTE_TO_USE_FOR_COUNTING_BYTES).getValue(); - if (attributeToUseForCountingBytes != null) { - if (attributeToUseForCountingBytes.equals(STANDARD_FLOWFILE_FILESIZE_PROPERTY)) { - return fileSize; - } - final String valueToUseForCountingBytes = flowFile.getAttribute(attributeToUseForCountingBytes); - if (valueToUseForCountingBytes != null) { - try { - final int intVal = Integer.parseInt(valueToUseForCountingBytes); - if (intVal >= 0) { - fileSize = intVal; - } else { - logger.warn(this + " Value to use for counting bytes must be numeric and non-negative. Found: " + valueToUseForCountingBytes); - } - } catch (final NumberFormatException e) { - logger.warn(this + " Value to use for counting bytes must be numeric and non-negative. Found: " + valueToUseForCountingBytes); - } - } else { - logger.warn(this + " Value to use for counting bytes cannot be null. It must be numeric and non-negative. Found: " + valueToUseForCountingBytes); - } - } else { - logger.warn(this + ATTRIBUTE_TO_USE_FOR_COUNTING_BYTES_PROPERTY + " property cannot be empty."); - } - return fileSize; - } - - private ConcurrentHashMap getCountsForAttribute(final String attributeName) { - ConcurrentHashMap countsForThisAttribute = null; - readLock.lock(); - try { - countsForThisAttribute = this.counts.get(attributeName); - } finally { - readLock.unlock(); - } - if (countsForThisAttribute == null) { // if no count record is available, create one - countsForThisAttribute = new ConcurrentHashMap<>(); - ConcurrentHashMap putResult = null; - writeLock.lock(); - try { - putResult = this.counts.putIfAbsent(attributeName, countsForThisAttribute); - } finally { - writeLock.unlock(); - } - if (putResult != null) { - countsForThisAttribute = putResult; - } - } - return countsForThisAttribute; - } - - private CompareRecord getCountsForAttributeValue(ConcurrentHashMap countsForThisAttribute, - final String attributeValue, final String attributeName, final CompareRecord threshold) { - - CompareRecord countsForThisAttributeValue = null; - readLock.lock(); - try { - countsForThisAttributeValue = countsForThisAttribute.get(attributeValue); - } finally { - readLock.unlock(); - } - - if (countsForThisAttributeValue == null) { // if no count record is available, create one - countsForThisAttributeValue = new CompareRecord(threshold, attributeName, attributeValue); - CompareRecord returnedState = null; - writeLock.lock(); - try { - returnedState = countsForThisAttribute.putIfAbsent(attributeValue, countsForThisAttributeValue); - } finally { - writeLock.unlock(); - } - if (returnedState != null) { - countsForThisAttributeValue = returnedState; - } - } - return countsForThisAttributeValue; - } - - protected boolean shouldSaveCounts(ProcessContext context) { - writeLock.lock(); - try { - if (this.timeCountsLastSaved == null) { - this.timeCountsLastSaved = System.currentTimeMillis(); - } - - final String saveSeconds = context.getProperty(OPT_FREQUENCY_TO_SAVE_COUNTS_SECS).getValue(); - final int seconds = saveSeconds == null ? DEFAULT_SAVE_COUNTS_FREQ_SECS : Integer.parseInt(saveSeconds); - final long timeToSave = seconds * 1000 + this.timeCountsLastSaved; - - return timeToSave <= System.currentTimeMillis(); - } finally { - writeLock.unlock(); - } - } - - protected void saveCounts(final File file, ProcessorLog logger) { - readLock.lock(); - try { - if (this.counts == null) { - return; - } - - try { - final FileOutputStream fos = new FileOutputStream(file); - final ObjectOutputStream oos = new ObjectOutputStream(fos); - try { - oos.writeObject(this.counts); - Long time = this.timeCountsLastCleared; - if (time == null) { - time = 0L; - } - oos.writeObject(time); - } finally { - FileUtils.closeQuietly(oos); - } - - logger.debug(this + " saved current counts to file " + file.getAbsolutePath()); - } catch (final IOException e) { - logger.error("Unable to save counts to file " + file.getAbsolutePath() + " due to " + e); - } - } finally { - readLock.unlock(); - } - - writeLock.lock(); - try { - this.timeCountsLastSaved = System.currentTimeMillis(); - } finally { - writeLock.unlock(); - } - } - - protected synchronized ConcurrentHashMap> getCounts(final ProcessContext context, final ProcessSession session, final ProcessorLog logger) { - if (this.counts != null) { - return this.counts; - } - - final File file = getCountsFile(context); - if (file.exists()) { - try { - final Tuple>> tuple = readCountsFile(file); - writeLock.lock(); - try { - timeCountsLastCleared = tuple.getKey(); - this.counts = tuple.getValue(); - } finally { - writeLock.unlock(); - } - - if (shouldClearCounts(context)) { - logger.warn(this + " restored saved counts but the counts have already expired. Clearing counts now."); - clearCounts(context, session, logger); - } else { - logger.info(this + " restored saved counts"); - } - - return this.counts; - } catch (final IOException e) { - logger.error(this + " unable to read counts from file " + file.getAbsolutePath() + " due to " + e); - this.counts = new ConcurrentHashMap<>(); - } - } else { - this.counts = new ConcurrentHashMap<>(); - } - - return this.counts; - } - - private File getCountsFile(ProcessContext context) { - final String countsFilePrefixVal = context.getProperty(OPT_COUNTS_PERSISTENCE_FILE_PREFIX).getValue(); - final String countsFilePrefix = countsFilePrefixVal == null ? DEFAULT_COUNTS_PERSISTENCE_FILE_PREFIX : countsFilePrefixVal; - final String countsFilename = countsFilePrefix + "-" + this.getIdentifier() + ".counts"; - - final File file = new File(countsFilename); - return file; - } - - @SuppressWarnings("unchecked") - protected Tuple>> readCountsFile(final File file) - throws IOException { - final FileInputStream fis = new FileInputStream(file); - final ObjectInputStream ois = new ObjectInputStream(fis); - try { - final Object mapObject = ois.readObject(); - final Long rolloverTime = (Long) ois.readObject(); - return new Tuple<>(rolloverTime, (ConcurrentHashMap>) mapObject); - } catch (final ClassNotFoundException e) { - throw new IOException(e); - } finally { - FileUtils.closeQuietly(ois); - } - } - - private Map> getThresholds(ProcessContext context, ProcessorLog logger) { - Map> thresholds; - readLock.lock(); - try { - if (this.thresholds == null || this.thresholds.isEmpty()) { - thresholds = null; - } else { - thresholds = new HashMap<>(this.thresholds); - } - } finally { - readLock.unlock(); - } - - if (thresholds == null) { - writeLock.lock(); - try { - - if (this.thresholds == null) { - final ThresholdsParser parser = new ThresholdsParser(logger); - this.thresholds = parser.readThresholds(context.getAnnotationData()); //read thresholds from flow.xml file - } - - thresholds = Collections.unmodifiableMap(this.thresholds); - } catch (final Exception e) { - logger.error("Unable to read Thresholds.", e); - return null; - } finally { - writeLock.unlock(); - } - } - - return thresholds; - } - - protected boolean shouldClearCounts(ProcessContext context) { - readLock.lock(); - try { - // If we are rolling over based on time, rather than a certain number of minutes, - // then we don't want to allow the millisToClear to be greater than 24 hours. - final boolean usingTime = (context.getProperty(OPT_COUNT_RESET_TIME).getValue() != null); - long millisToClear = calculateCountResetMillis(context); - if (usingTime) { - millisToClear = Math.min(MILLIS_IN_HOUR * 24, millisToClear); - } - - long timeToClear = this.timeCountsLastCleared + millisToClear; - return timeToClear < System.currentTimeMillis(); - } finally { - readLock.unlock(); - } - } - - protected long calculateCountResetMillis(ProcessContext context) { - final String rolloverTimeVal = context.getProperty(OPT_COUNT_RESET_TIME).getValue(); - final String rolloverMinVal = context.getProperty(OPT_COUNT_RESET_MINUTES).getValue(); - - if (rolloverTimeVal == null) { - final int minutes = Integer.parseInt(rolloverMinVal); - final long millis = minutes * MILLIS_IN_MINUTE; - return millis; - } else { - final Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("GMT")); - final String[] rolloverSplit = rolloverTimeVal.split(":"); - final int rolloverHour = Integer.parseInt(rolloverSplit[0]); - final int rolloverMinutes = Integer.parseInt(rolloverSplit[1]); - final int rolloverSeconds = Integer.parseInt(rolloverSplit[2]); - - calendar.set(Calendar.HOUR_OF_DAY, rolloverHour); - calendar.set(Calendar.MINUTE, rolloverMinutes); - calendar.set(Calendar.SECOND, rolloverSeconds); - calendar.set(Calendar.MILLISECOND, 0); - - // Make sure we have the right day. - final Calendar lastRolloverCal = Calendar.getInstance(TimeZone.getTimeZone("GMT")); - readLock.lock(); - try { - lastRolloverCal.setTimeInMillis(this.timeCountsLastCleared); - } finally { - readLock.unlock(); - } - - while (calendar.before(lastRolloverCal)) { - calendar.add(Calendar.DAY_OF_YEAR, 1); - } - - return calendar.getTimeInMillis() - lastRolloverCal.getTimeInMillis(); - } - } - - protected void clearCounts(final ProcessContext context, final ProcessSession session, final ProcessorLog logger) { - writeLock.lock(); - try { - if (shouldClearCounts(context)) { - logger.info("\n" + this + " throttling period has elapsed; resetting counts."); - logCounts(context, logger); - counts.clear(); - this.timeCountsLastCleared = System.currentTimeMillis(); - } - } finally { - writeLock.unlock(); - } - } - - protected synchronized void logCounts(ProcessContext context, ProcessorLog logger) { - final StringBuilder sb = new StringBuilder(); - sb.append("\n>>>>>>>> MonitorThreshold Report: <<<<<<<<"); - for (String count : this.counts.keySet()) { - sb.append("\nAttribute with Threshold: ").append(count); - ConcurrentHashMap countsForThisAttribute = getCountsForAttribute(count); - for (String value : countsForThisAttribute.keySet()) { - sb.append("\nAttribute: ").append(count).append("\tValue: '").append(value).append("'"); - CompareRecord countsForThisAttributeValue = countsForThisAttribute.get(value); - sb.append("\n\tFiles Threshold: ").append(countsForThisAttributeValue.getFileThreshold()) - .append("\tBytes Threshold: ").append(countsForThisAttributeValue.getByteThreshold()) - .append("\n\tNum files seen: ").append(countsForThisAttributeValue.getFileCount()) - .append("\tNum bytes seen: ").append(countsForThisAttributeValue.getByteCount()); - } - } - sb.append("\n>>>>>> End MonitorThreshold Report. <<<<<<"); - String logReport = sb.toString(); - logger.info(logReport); - } - - // CompareRecord does double duty. - // A single CompareRecord instance is used to contain thresholds (but kept in the count variables). - // Other CompareRecord instances contain actual counts, each with a reference back to their 'governing' threshold instance. - public static class CompareRecord implements Serializable { - - private static final long serialVersionUID = -2759458735761055366L; - private int fileCount; - private long byteCount; - private CompareRecord threshold = null; // reference to the instance containing the thresholds - private final String attributeName; - private final String attributeValue; - private final ReentrantReadWriteLock rwLock = new ReentrantReadWriteLock(); - private final Lock compareRecordReadLock = rwLock.readLock(); - private final Lock compareRecordWriteLock = rwLock.writeLock(); - - // Used for creating a 'threshold' record. - public CompareRecord(final String attributeName, final String attributeValue, final int fileThreshold, final long byteThreshold) { - this.attributeName = attributeName; - this.attributeValue = attributeValue; - this.fileCount = fileThreshold; // for threshold records, save thresholds in count fields - this.byteCount = byteThreshold; // for threshold records, save thresholds in count fields - } - - // Used for creating a 'count' record (that is compared against thresholds to determine whether or not a FlowFile exceeds a threshold). - public CompareRecord(final CompareRecord threshold, final String attributeName, final String attributeValue) { - this(attributeName, attributeValue, 0, 0); // begin with 0 for the counts - this.threshold = threshold; // "connect" this count record to its corresponding threshold record - } - - public void addToFlowFileCounts(final long fileSize) { - if (threshold == null) { - throw new IllegalStateException("Attempted to add to counts when no threshold exists!"); - } - - compareRecordWriteLock.lock(); - try { - byteCount += fileSize; - fileCount++; - - } finally { - compareRecordWriteLock.unlock(); - } - } - - public String getReasonFileLimitExceeded() { - long fileCnt = getFileCount(); - long fileThreshold = getFileThreshold(); - if (getFileThreshold() < fileCnt) { - return "\n\tAttribute: '" + attributeName + "' Value '" + attributeValue + "'" - + "\tFile threshold: " + fileThreshold - + "\tExpected Count: " + fileCnt + " (counting this file)" - + ((fileThreshold < fileCnt) ? "\t[threshold exceeded]" : "\t[below thresholds]"); - } - return null; - } - - public String getReasonByteLimitExceeded() { - long byteCnt = getByteCount(); - long byteThreshold = getByteThreshold(); - if (byteThreshold < byteCnt) { - return "\n\tAttribute: '" + attributeName + "' Value '" + attributeValue + "'" - + "\tByte threshold: " + byteThreshold - + "\tExpected Count: " + byteCnt + " (counting this file)" - + ((byteThreshold < byteCnt) ? "\t[threshold exceeded]" : "\t[below thresholds]"); - } - return null; - } - - public boolean fileThresholdExceeded() { - return getFileThreshold() < getFileCount(); - } - - public boolean byteThresholdExceeded() { - return getByteThreshold() < getByteCount(); - } - - public long getByteCount() { - compareRecordReadLock.lock(); - try { - return byteCount; - } finally { - compareRecordReadLock.unlock(); - } - } - - public int getFileCount() { - compareRecordReadLock.lock(); - try { - return fileCount; - } finally { - compareRecordReadLock.unlock(); - } - } - - public long getByteThreshold() { - compareRecordReadLock.lock(); - try { - return threshold.getByteCount(); - } finally { - compareRecordReadLock.unlock(); - } - } - - public int getFileThreshold() { - compareRecordReadLock.lock(); - try { - return threshold.getFileCount(); - } finally { - compareRecordReadLock.unlock(); - } - } - - public String getAttributeName() { - return attributeName; - } - - public String getAttributeValue() { - return this.attributeValue; - } - - } //end CompareRecord inner class - -} // end MonitorThreshold class diff --git a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/main/java/org/apache/nifi/processors/monitor/ThresholdsParser.java b/nifi/nar-bundles/monitor-threshold-bundle/processor/src/main/java/org/apache/nifi/processors/monitor/ThresholdsParser.java deleted file mode 100644 index fcafb5bde1..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/main/java/org/apache/nifi/processors/monitor/ThresholdsParser.java +++ /dev/null @@ -1,134 +0,0 @@ -/* - * 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.processors.monitor; -/* - * NOTE: rule is synonymous with threshold - */ - -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import javax.xml.parsers.DocumentBuilder; -import javax.xml.parsers.DocumentBuilderFactory; -import javax.xml.parsers.ParserConfigurationException; - -import org.apache.nifi.logging.ProcessorLog; -import org.apache.nifi.processors.monitor.MonitorThreshold.CompareRecord; -import org.w3c.dom.Document; -import org.w3c.dom.Element; -import org.w3c.dom.NamedNodeMap; -import org.w3c.dom.Node; -import org.w3c.dom.NodeList; -import org.xml.sax.InputSource; -import org.xml.sax.SAXException; - -public class ThresholdsParser { - - private final ProcessorLog logger; - - public ThresholdsParser(ProcessorLog logger) { - this.logger = logger; - } - - private CompareRecord parseThresholds(final String attributeName, final Node valueNode) { - final NamedNodeMap attributes = valueNode.getAttributes(); - final long byteLimit = Long.parseLong(attributes.getNamedItem("size").getTextContent()); - final int filesLimit = Integer.parseInt(attributes.getNamedItem("count").getTextContent()); - - String value = null; - if (valueNode.getNodeName().equals("noMatchRule")) { - value = MonitorThreshold.DEFAULT_THRESHOLDS_KEY; - } else { - value = attributes.getNamedItem("id").getTextContent(); - } - - if (value == null) { - throw new IllegalArgumentException("Thresholds for " + attributeName + ", size=" + byteLimit + ", count=" + filesLimit + " has no ID"); - } - - final CompareRecord thresholdsState = new CompareRecord(attributeName, value, filesLimit, byteLimit); - return thresholdsState; - } - - public Map> readThresholds(String values) - throws ParserConfigurationException, SAXException, IOException { - final Map> thresholdsMap = new HashMap<>(); - - final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); - final DocumentBuilder db = factory.newDocumentBuilder(); - final Document doc = db.parse(new InputSource(new ByteArrayInputStream(values.getBytes()))); - final Element configurationElement = doc.getDocumentElement(); - - final NodeList secondLevelElementList = configurationElement.getChildNodes(); - - if (secondLevelElementList.getLength() == 0) { - logger.warn("Trying to read thresholds, but no thresholds were parsed."); - } - - // Loop through the the list of FlowFile attributes (i.e., elements) and their list of values with limits - for (int i = 0; i < secondLevelElementList.getLength(); i++) { - final Node element = secondLevelElementList.item(i); - final String localName = element.getNodeName(); - if (localName != null && localName.equalsIgnoreCase("flowFileAttribute")) { - if (element.getNodeType() != Node.ELEMENT_NODE) { - logger.debug("Encountered non-ELEMENT_NODE while parsing thresholds: " + element.getNodeName()); - continue; - } - - final String attributeName = element.getAttributes().getNamedItem("attributeName").getNodeValue(); - final NodeList children = element.getChildNodes(); - - CompareRecord noMatchRule = null; - List thresholds = new ArrayList<>(); - for (int j = 0; j < children.getLength(); j++) { - final Node valueNode = children.item(j); - if (valueNode == null || valueNode.getNodeType() != Node.ELEMENT_NODE) { - continue; - } - final String nodeName = valueNode.getNodeName(); - if (nodeName.equalsIgnoreCase("noMatchRule")) { - noMatchRule = parseThresholds(attributeName, valueNode); - } else if (nodeName.equalsIgnoreCase("rule")) { - thresholds.add(parseThresholds(attributeName, valueNode)); - } else { - throw new SAXException("Invalid Threshold Configuration: child of 'attributeName' element was not 'noMatchRule', or 'threshold'"); - } - } - if (noMatchRule == null) { - throw new SAXException("Invalid Threshold Configuration: no 'noMatchRule' element found for 'attributeName' element"); - } - - Map comparisonRecords = thresholdsMap.get(attributeName); - if (comparisonRecords == null) { - comparisonRecords = new HashMap<>(); - thresholdsMap.put(attributeName, comparisonRecords); - } - - comparisonRecords.put(noMatchRule.getAttributeValue(), noMatchRule); - for (final CompareRecord rs : thresholds) { - comparisonRecords.put(rs.getAttributeValue(), rs); - } - } - } // end loop through all listed attributes - - return thresholdsMap; - } -} diff --git a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/main/resources/META-INF/services/org.apache.nifi.processor.Processor b/nifi/nar-bundles/monitor-threshold-bundle/processor/src/main/resources/META-INF/services/org.apache.nifi.processor.Processor deleted file mode 100644 index 67aba65e4d..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/main/resources/META-INF/services/org.apache.nifi.processor.Processor +++ /dev/null @@ -1,15 +0,0 @@ -# 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. -org.apache.nifi.processors.monitor.MonitorThreshold \ No newline at end of file diff --git a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/main/resources/docs/org.apache.nifi.processors.monitor.MonitorThreshold/index.html b/nifi/nar-bundles/monitor-threshold-bundle/processor/src/main/resources/docs/org.apache.nifi.processors.monitor.MonitorThreshold/index.html deleted file mode 100644 index 2822f8a76a..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/main/resources/docs/org.apache.nifi.processors.monitor.MonitorThreshold/index.html +++ /dev/null @@ -1,485 +0,0 @@ - - - - - - MonitorThreshold - - - -

Description:

-

This processor examines values found in selected FlowFile attributes and - maintains counts of the number of times the values have been encountered. - The counts are then used to check against user defined thresholds. - Both the counts and the thresholds can be exposed as FlowFile attributes, for - later examination and use by downstream processors. -

- Thresholds for Each Identified Attribute Value -

One or more FlowFile attributes can be identified for monitoring purposes, using - this processor’s advanced user interface (use the Advanced button when configuring the processor). -

-

In the following example, two FlowFile attributes have been identified: category and priority. - In other words, for each FlowFile that is presented to this processor both the category and priority - attributes (if they exist) will be examined to see if thresholds have been exceeded. For each attribute - that is identified, different thresholds (and counts) are used for every unique attribute value. - Finally, for each attribute value, two types of thresholds are supported; size (bytes) and number of files. -

-

Example Thresholds:

- - - - - - - - - -
Attribute NamesAttribute ValuesSize Threshold (bytes)File Threshold
categoryDefault10000100
red100010
green10005
Attribute ValuesSize Threshold (bytes)File Threshold
priorityDefault100000200
blue100050
yellow1000100
-
When Thresholds are Exceeded -

- To allow downstream flows (processors) to react, this processor adds two new attributes - (numApplicableThresholds and numThresholdsExceeded) to - every FlowFile that passes through the processor, no matter whether a threshold is exceeded. -

-

- In addition, if a monitored attribute value is present on a FlowFile, and - 'Add Attributes' is set to 'Only When Threshold Exceeded', - this processor will add an additional pair of attributes to each FlowFile that exceeds - the threshold; one attribute will contain the threshold and the other attribute will contain the count - (that exceeded the threshold), e.g., -

    -
  • If a byte count threshold is exceeded, both -
      -
    • byteCount.attributeName.value and
    • -
    • byteThreshold.attributeName.value
    • -
    - attributes will be added to the FlowFile -
  • -
  • If a file count threshold is exceeded, both -
      -
    • fileCount.attributeName.value and
    • -
    • fileThreshold.attributeName.value
    • -
    - attributes will be added to the FlowFile, - where attributeName is replaced with the - actual attribute name and value is replaced with the actual attribute value. -
  • -
-

-

For example, assuming the aforementioned thresholds (from the preceding table) are in effect, if -

    -
  • a FlowFile is encountered with a category value of red,
  • -
  • and it is the 11th such file encountered,
  • -
- then the file count threshold (=10) would be exceeded. - This would cause the following new attributes to be added to the FlowFile: -

- - - - -
Attribute NameValue
fileCount.category.red11
fileThreshold.category.red10
-

-

-

- Note that when a threshold is exceeded, it is always noted in the - log, no matter the value of 'Add Attributes'. -

-

- Finally, if a monitored attribute value is present on the FlowFile, and - 'Add Attributes' is set to 'Always', four additional - attributes will be added to FlowFiles, no matter whether a threshold has been exceeded. - (This can be a convenient mechanism for counting values found in FlowFile attributes.) -
The four additional attributes are: fileCount.attributeName.value, - a fileThreshold.attributeName.value, a byteCount.attributeName.value, - and a byteThreshold.attributeName.value where attributeName is replaced with the - actual attribute name and value is replaced with the actual attribute value. - -

-

- Note that a FlowFile must have a monitored attribute before corresponding count/threshold attributes will be added. - In other words, if a particular FlowFile does not have a monitored attribute, the associated - count/threshold attributes will not be added under any circumstances (no matter the value of 'Add Attributes'). -

- -
When Multiple Thresholds are Exceeded -

- If more than one threshold is exceeded, a pair of attributes are added for each threshold - that is exceeded (subject to the values of the - 'Add Attributes' and - 'Maximum Attribute Pairs to Add When Multiple Thresholds Exceeded' properties). -

- -
Default Thresholds Required -

- Since the range of possible values (for a particular FlowFile attribute) can be large/unknown - in advance, it is conceivable that thresholds may not be supplied for all possible values. - To account for this possibility, a default threshold must be specified for every attribute that is - monitored. Default thresholds are used when a "monitored" attribute has a value for - which no thresholds were supplied. -

-

- For example, in the following table, assume that thresholds have been specified for FlowFiles - with a category value of red or green, but no thresholds were specified for category values of cyan or magenta. - FlowFiles that are encountered with a category value of cyan or magenta will be checked using the default - thresholds. -

- - - - - - - - - - - - - -
Attribute NamesAttribute ValuesSize Threshold (bytes)File Threshold
categoryDefault10000100
red100010
green10005
cyan value not supplied(use Default)(use Default)
magenta value not supplied(use Default)(use Default)
Attribute ValuesSize Threshold (bytes)File Threshold
priorityDefault100000200
blue100050
yellow1000100
-
Counting Without Thresholds -

- When a value (in a monitored attribute) is encountered, but no thresholds have been specified - for that value, the 'Aggregate Counts When No Threshold Provided' determines how counts are maintained. -

    -
  • If false, then : -
      -
    • Separate, individual counts are maintained for each non-threshold, value that is encountered. - As shown in the following table, if a FlowFile has a category value of cyan, its counts would be added to the cyan counts. - If a FlowFile has a category value of magenta, its counts would be added to the magenta counts - - even though no thresholds were provided for category values cyan or magenta. - - - - - - - - - - - - - -
      Attribute NamesAttribute ValuesSize Threshold (bytes)byte countFile Thresholdfile count
      categoryDefault10000n/a100n/a
      red100010
      green10005
      cyan value not supplied(use Default threshold)(use Default threshold)
      magenta value not supplied(use Default threshold)(use Default threshold)
      Attribute ValuesSize Threshold (bytes)byte countFile Thresholdfile count
      priorityDefault100000n/a200n/a
      blue100050
      yellow1000100
      - NOTE: Counts (shown in the above table) can not be viewed in the Advanced user interface. Only thresholds can be viewed in the Advanced user interface. -
    • -
    • When a non-threshold value is encountered, it's unique count will be compared with the default threshold. - So, if a FlowFile has a category value of cyan, the cyan count will be checked against the default thresholds (since no - thresholds were provided for a cyan category value). If a FlowFile has a category value of magenta, magenta - counts will be checked against the (same) default thresholds (since no thresholds were provided for a magenta category). -
    • -
    -
  • -
  • If true (default), then: -
      -
    • Counts for ALL non-threshold values are aggregated into a single default count. As shown in the following table, - all FlowFiles with a category value of cyan or magenta will have their counts added to a single, default count.
    • - - - - - - - - - - - - - -
      Attribute NamesAttribute ValuesSize Threshold (bytes)byte countFile Thresholdfile count
      categoryDefault10000100
      red100010
      green10005
      cyan value not supplied(use Default threshold)(use Default count)(use Default threshold)(use Default count)
      magenta value not supplied(use Default threshold)(use Default count)(use Default threshold)(use Default count)
      Attribute ValuesSize Threshold (bytes)byte countFile Thresholdfile count
      priorityDefault100000200
      blue100050
      yellow1000100
      - NOTE: Counts (shown in the above table) can not be viewed in the Advanced user interface. Only thresholds can be viewed in the Advanced user interface. -
    • When a non-threshold value is encountered, the default count (containing counts for both cyan and magenta - category values) will be compared to the default threshold.
    • -
    -
  • -
-

- -

NOTE 1: Counts are never maintained for attributes that have not been - identified for monitoring, i.e., do not have a default threshold. Once an attribute has - been identified for monitoring (has a default threshold), counts are always maintained - for thresholds that have been specified. The 'Aggregate Counts When No Threshold Provided' - property only applies in situations where an attribute has been identified for monitoring, and a value is - encountered with no threshold. -

- -

- NOTE 2: If separate counts are maintained for each unique value for each attribute with thresholds - ('Aggregate Counts When No Threshold Provided' is set to true), - consideration should be given to the choice of attributes to be monitored. An attribute that is - known to have a range of 1 million values, could (ultimately) result in this processor maintaining - 2 million counts in memory. - If the range of values for an attribute are expected to be larger than available memory resources - (for maintaining counts), set the 'Aggregate Counts When No Threshold Provided' property - to false. Adopting this approach will require that specific thresholds be provided for any - attribute values that should be "counted" separately. -

-

Separate Instance Equals Separate Counts

-

- Each MonitorThreshold instance maintains its own, separate counts. This is likely the expected - behavior when there are multiple MonitorThreshold instances on a flow. However, this has significant - implications when only a single MonitorThreshold instance appears on a flow, but the flow is running - on a NiFi cluster. In this case, each node (in the cluster) will have its - own instance of MonitorThreshold, each with its own,independent set of counts (unless MonitorThreshold is running isolated). - Assuming an even distribution of FlowFiles across all of the nodes in the - cluster will result in counts that increase slower, and therefore exceed - thresholds later, than might otherwise be expected. Consequently, thresholds may need to be set lower - in clustered environments, in order to achieve desired results. -

-

Resetting Counts

-

- To avoid counts that increase forever (that might eventually force all thresholds to be exceeded), - counts are reset on a periodic basis. Resets can be scheduled for a particular 'Count Reset Time' - every day, or after a specific number of 'Minutes to Wait Before Resetting Counts' have elapsed. At - least one value must be provided. If “Count Reset Time� is not provided, then the minutes to delay - are counted from the last reset. -

-

- When counts are reset, the current thresholds, total number of bytes and the number of files seen - for each Attribute and Value pair is printed in the logs, and the counts are then reset to zero. -

-

Changing Thresholds

-

- If changes are made to other parameters, such as the size or file thresholds, - after the processor has already been running, then the changes will not go into effect until the - Minutes to Wait… point has been reached. To circumvent this problem, consider temporarily changing the - 'Count Reset Time' (and stop/restart the processor) to force the changes to be implemented sooner; then - revert back to the desired 'Count Reset Time'. -

- -

-

Persisting Counts

-

- To avoid unplanned count resets (due to system restarts, etc…), counts are persisted to disk on - a user defined periodic basis according to the 'Frequency to Persist Counts (seconds)' property. -

- -

Modifies Attributes: - - - - - - - - -
Attribute NameDescription
numApplicableThresholdsThe number of thresholds that were applicable for the FlowFile. Added to every FlowFile.
numThresholdsExceededThe number of thresholds that the FlowFile exceeded. Added to every FlowFile.
fileThreshold.attributeName.valueContains the file threshold for an attribute name and value. -
A separate fileThreshold.attributeName.value attribute is added for each file threshold that is exceeded. -
attributeName will be the name of the attribute who's file threshold was exceeded. -
value will be the value of the attribute encountered on the FlowFile. -

Added only if attributeName is a monitored attribute and attributeName - is present on the FlowFile and one of the following is true: -
  • 'Add Attributes' is set to 'Always' or
  • -
  • 'Add Attributes' is set to 'Only When Threshold Exceeded' and a file threshold is exceeded.
-        (See also: 'Maximum Attribute Pairs to Add When Multiple Thresholds Exceeded'). -

Not added when 'Add Attributes' is set to 'Never' -
fileCount.attributeName.valueContains the file count for an attribute name and value who's threshold was exceeded. -
A separate fileCount.attributeName.value attribute is added for each file threshold that is exceeded. -
attributeName will be the name of the attribute who's file threshold was exceeded. -
value will be the value of the attribute encountered on the FlowFile. -

Added only if attributeName is a monitored attribute and attributeName -is present on the FlowFile and one of the following is true: -
  • 'Add Attributes' is set to 'Always' or
  • -
  • 'Add Attributes' is set to 'Only When Threshold Exceeded' and a file threshold is exceeded.
-       (See also: 'Maximum Attribute Pairs to Add When Multiple Thresholds Exceeded'). -

Not added when 'Add Attributes' is set to 'Never' -
byteThreshold.attributeName.valueContains the byte threshold for an attribute name and value. -
A separate byteThreshold.attributeName.value attribute is added for each byte threshold that is exceeded. -
attributeName will be the name of the attribute who's byte threshold was exceeded. -
value will be the value of the attribute encountered on the FlowFile. -

Added only if attributeName is a monitored attribute and attributeName -is present on the FlowFile and one of the following is true: -
  • 'Add Attributes' is set to 'Always' or
  • -
  • 'Add Attributes' is set to 'Only When Threshold Exceeded' and a file threshold is exceeded.
-       (See also: 'Maximum Attribute Pairs to Add When Multiple Thresholds Exceeded'). -

Not added when 'Add Attributes' is set to 'Never' -
byteCount.attributeName.valueContains the byte count for an attribute name and value who's threshold was exceeded. -
A separate byteCount.attributeName.value attribute is added for each byte threshold is exceeded. -
attributeName will be the name of the attribute who's byte threshold that was exceeded. -
value will be the value of the attribute encountered on the FlowFile. -

Added only if attributeName is a monitored attribute and attributeName -is present on the FlowFile and one of the following is true: -
  • 'Add Attributes' is set to 'Always' or
  • -
  • 'Add Attributes' is set to 'Only When Threshold Exceeded' and a file threshold is exceeded.
-       (See also: 'Maximum Attribute Pairs to Add When Multiple Thresholds Exceeded'). -

Not added when 'Add Attributes' is set to 'Never' -
- - - - - - -

Properties: -
Required properties appear in bold. Non-bold properties are optional. - If a property has a default, it is indicated. - If a property supports the NiFi Expression Language, it is indicated. -

-

    -
  • Aggregate Counts When No Threshold Provided
  • -
      -
    • When a value (in a monitored attribute) is encountered, but no thresholds have been specified - for that value, this property determines how counts are maintained. -
        -
      • If true (default): -
          -
        • Counts for ALL non-threshold values are aggregated into a single count.
        • -
        • When a non-threshold value is encountered, the aggregate count will be compared to the default threshold.
        • -
        -
      • -
      • If false: -
          -
        • Separate, individual counts are maintained for each non-threshold, value that is encountered.
        • -
        • When a non-threshold value is encountered, it's unique count will be compared with the default threshold.
        • -
        -
      • -
      -

      - -

      NOTE 1: Counts are never maintained for attributes that have not been - identified for monitoring, i.e., do not have a default threshold. Once an attribute has - been identified for monitoring (has a default threshold), counts are always maintained - for thresholds that have been specified. This property only applies in situations - where an attribute has been identified for monitoring, and a value is encountered for which there is no user supplied threshold. -

      - -

      NOTE 2: Changing this property from false to true will not remove unique, "non-threshold" counts - that are being maintained. It will simply suspend accumulating unique, "non-threshold" counts - and begin accumulating an aggregate/"default" count for all "non-threshold" values. - Setting the property back to false, will resume accumulating unique, "non-threshold" counts. - Since repeatedly changing this property, may give the mistaken appearance that counts are not - accurately maintained, it is advised that this property be set to one value and left unchanged - during a counting "period". See Count Reset Time and - Minutes to Wait Before Resetting Counts for information on starting a new counting period. -

      -
    • -
    • Default: true
    • -
    • Supports expression language: false.
    • -
    - -
  • Count Reset Time
  • -
      -
    • The time (24-hour clock, hh:mm:ss format, GMT Timezone) when the byte and file counts - will be reset to zero. All of hours, minutes, and seconds are required, i.e., hh:mm is insufficient.
    • -
    • Default: none – either Count Reset Time or Minutes to Wait Before Resetting Counts must be provided.
    • -
    • Supports expression language: false.
    • -
    - -
  • Minutes to Wait Before Resetting Counts
  • -
      -
    • Minutes to delay count reset, beginning at Count Reset Time, if provided. If Count - Reset Time is not provided, then the minutes to delay are counted from the last reset. - (Last reset is initially set to the time when the processor is created (added to a flow).) -
      NOTE: If changes are made to other - parameters, such as the size or file thresholds after the processor has already been running, - then the changes will not go into effect until this Minutes to Wait… point has been reached. - To circumvent this problem, consider temporarily changing the Count Reset Time (and - stop/restart the processor) to force the changes to be implemented sooner; then revert back - to the desired settings. -
    • -
    • Default: none – either Count Reset Time or Minutes to Wait - Before Resetting Counts must be provided.
    • -
    • Supports expression language: false.
    • -
    - -
  • Add Attributes
  • -
      -
    • Setting this property to 'Only When Threshold Exceeded' (the default) will cause two additional attributes to be added to - FlowFiles for every threshold that is exceeded, but only when the threshold is exceeded. -
      For example, if a file count threshold - is exceeded, a fileCount.attributeName.value and a fileThreshold.attributeName.value - will be added to the FlowFile. -
    • Setting this property to 'Always' will cause four additional attributes to be added to - FlowFiles no matter whether the threshold has been exceeded. -
      The four additional attributes include a fileCount.attributeName.value, - a fileThreshold.attributeName.value, a byteCount.attributeName.value, - and a byteThreshold.attributeName.value. -
    • Setting this property to 'Never' means do not add additional attributes to FlowFiles. -
    • Note 1: Attributes are only added if a monitored attribute is present on the FlowFile, no matter - the value of this property. -
    • Note 2: This processor makes a log entry for every threshold - that is exceeded, no matter the value of this property.
    • -
    • Defaults to: 'Only When Threshold Exceeded'.
    • -
    • Supports expression language: false.
    • -
    - -
  • Maximum Attribute Pairs to Add When Multiple Thresholds Exceeded
  • -
      -
    • Controls/limits the number of FlowFile attributes that are added when - multiple thresholds are exceeded. -
      Recall that when a threshold is exceeded, - a pair of two attributes are added to the FlowFile, one is the current count and - the other is the threshold. If 100 thresholds are exceeded, then 200 - attributes will be added to the FlowFile. Setting this property to zero means add - all count/threshold pairs that were exceeded. Any setting greater than zero indicates - how many count/threshold pairs to add when multiple thresholds are exceeded. - Only non-negative settings are supported. The default is 0. -
      NOTE: This property is in effect only when 'Add Attributes' is 'Only When Threshold Exceeded'. - In other words, setting 'Add Attributes' to 'Always' or 'Never' - causes this property to be ignored. -
    • -
    • Defaults to: 0
    • -
    • Supports expression language: false.
    • -
    - -
  • Delimiter to Use for Counts Attributes
  • -
      -
    • The delimiter to use when naming counts that are published as FlowFile - attributes, e.g., fileCount.attributeName.value. -
    • Defaults to: “.� -
    • Supports expression language: false. -
    - -
  • Attribute to use for Counting Bytes
  • -
      -
    • Setting this property allows a FlowFile attribute to be used for counting bytes, - in place of the actual fileSize. Note that the attribute named by this property must - contain only numeric, non-negative integer values for each FlowFile. Non-numeric or - negative values that are encountered will be ignored, causing the actual fileSize to - be used instead.
    • -
    • Defaults to: fileSize.
    • -
    • Supports expression language: false.
    • -
    - -
  • Frequency to Save Counts (seconds)
  • -
      -
    • How often all of the counts should be written to disk.
    • -
    • Defaults to: 30 seconds.
    • -
    • Supports expression language: false.
    • -
    - -
  • Prefix for Counts Persistence File
  • -
      -
    • The prefix for the file that is persisted to maintain counts across NIFI restarts. - The actual name of the state file will be this value plus "-XXXX.state" where XXXX is - the processor ID.
    • -
    • Defaults to: conf/MonitorThreshold
    • -
    • Supports expression language: false.
    • -
    -

-

- Relationships: -

-
    -
  • success - all FlowFiles follow this relationship, unless there is a problem with the FlowFile.
  • -
  • failure - FlowFiles follow this relationship path if there is a problem processing the FlowFile, or if there is a unrecoverable configuration error.
  • -
-

- - \ No newline at end of file diff --git a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/java/org/apache/nifi/processors/monitor/TestMonitorThreshold.java b/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/java/org/apache/nifi/processors/monitor/TestMonitorThreshold.java deleted file mode 100644 index bf08e1e4c2..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/java/org/apache/nifi/processors/monitor/TestMonitorThreshold.java +++ /dev/null @@ -1,1560 +0,0 @@ -/* - * 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.processors.monitor; -/* - * NOTE: The term "rule" is synonymous with "threshold" in these tests. - */ - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.FileReader; -import java.io.IOException; -import java.io.ObjectInputStream; -import java.lang.reflect.Field; -import java.lang.reflect.InvocationTargetException; -import java.util.Calendar; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.TimeZone; -import java.util.UUID; -import java.util.concurrent.ConcurrentHashMap; - -import org.apache.nifi.flowfile.FlowFile; -import org.apache.nifi.logging.ProcessorLog; -import org.apache.nifi.processor.ProcessContext; -import org.apache.nifi.processors.monitor.MonitorThreshold.CompareRecord; -import org.apache.nifi.reporting.InitializationException; -import org.apache.nifi.util.MockFlowFile; -import org.apache.nifi.util.MockProcessorLog; -import org.apache.nifi.util.TestRunner; -import org.apache.nifi.util.TestRunners; - -import org.junit.After; -import org.junit.Before; -import org.junit.BeforeClass; -import org.junit.Ignore; -import org.junit.Test; - -public class TestMonitorThreshold { - - private TestRunner runner; - - private final File primaryTestFile = new File("src/test/resources/testFile"); //Has 1,668 bytes - private final int PRIMARY_TEST_FILE_SIZE = (int) primaryTestFile.length(); - private FileInputStream primaryTestFileStream; - - public static final String DEFAULT_DELIMITER = "."; - public static final String CATEGORY_ATTRIBUTE_NAME = "category"; - public static final String VALUE_1234 = "1234"; - public static final String VALUE_2345 = "2345"; - public static final String VALUE_3456 = "3456"; - public static final String VALUE_DEFAULT = MonitorThreshold.DEFAULT_THRESHOLDS_KEY; - - public static final String fileCount_category_2345_key = MonitorThreshold.FILE_COUNT_PREFIX + DEFAULT_DELIMITER + CATEGORY_ATTRIBUTE_NAME + DEFAULT_DELIMITER + VALUE_2345; - public static final String fileThreshold_category_2345_key = MonitorThreshold.FILE_THRESHOLD_PREFIX + DEFAULT_DELIMITER + CATEGORY_ATTRIBUTE_NAME + DEFAULT_DELIMITER + VALUE_2345; - - public static final String byteCount_category_2345_key = MonitorThreshold.BYTE_COUNT_PREFIX + DEFAULT_DELIMITER + CATEGORY_ATTRIBUTE_NAME + DEFAULT_DELIMITER + VALUE_2345; - public static final String byteThreshold_category_2345_key = MonitorThreshold.BYTE_THRESHOLD_PREFIX + DEFAULT_DELIMITER + CATEGORY_ATTRIBUTE_NAME + DEFAULT_DELIMITER + VALUE_2345; - - public static final String fileCount_category_default_key = MonitorThreshold.FILE_COUNT_PREFIX + DEFAULT_DELIMITER + CATEGORY_ATTRIBUTE_NAME + DEFAULT_DELIMITER + VALUE_DEFAULT; - public static final String fileThreshold_category_default_key = MonitorThreshold.FILE_THRESHOLD_PREFIX + DEFAULT_DELIMITER + CATEGORY_ATTRIBUTE_NAME + DEFAULT_DELIMITER + VALUE_DEFAULT; - - public static final String byteCount_category_default_key = MonitorThreshold.BYTE_COUNT_PREFIX + DEFAULT_DELIMITER + CATEGORY_ATTRIBUTE_NAME + DEFAULT_DELIMITER + VALUE_DEFAULT; - public static final String byteThreshold_category_default_key = MonitorThreshold.BYTE_THRESHOLD_PREFIX + DEFAULT_DELIMITER + CATEGORY_ATTRIBUTE_NAME + DEFAULT_DELIMITER + VALUE_DEFAULT; - - public static final String fileCount_category_3456_key = MonitorThreshold.FILE_COUNT_PREFIX + DEFAULT_DELIMITER + CATEGORY_ATTRIBUTE_NAME + DEFAULT_DELIMITER + VALUE_3456; - public static final String fileThreshold_category_3456_key = MonitorThreshold.FILE_THRESHOLD_PREFIX + DEFAULT_DELIMITER + CATEGORY_ATTRIBUTE_NAME + DEFAULT_DELIMITER + VALUE_3456; - - public static final String byteCount_category_3456_key = MonitorThreshold.BYTE_COUNT_PREFIX + DEFAULT_DELIMITER + CATEGORY_ATTRIBUTE_NAME + DEFAULT_DELIMITER + VALUE_3456; - public static final String byteThreshold_category_3456_key = MonitorThreshold.BYTE_THRESHOLD_PREFIX + DEFAULT_DELIMITER + CATEGORY_ATTRIBUTE_NAME + DEFAULT_DELIMITER + VALUE_3456; - - public static final String PRIORITY_ATTRIBUTE_NAME = "priority"; - public static final String VALUE_1 = "1"; - public static final String fileCount_priority_1_key = MonitorThreshold.FILE_COUNT_PREFIX + DEFAULT_DELIMITER + PRIORITY_ATTRIBUTE_NAME + DEFAULT_DELIMITER + VALUE_1; - public static final String fileThreshold_priority_1_key = MonitorThreshold.FILE_THRESHOLD_PREFIX + DEFAULT_DELIMITER + PRIORITY_ATTRIBUTE_NAME + DEFAULT_DELIMITER + VALUE_1; - - public static final String byteCount_priority_1_key = MonitorThreshold.BYTE_COUNT_PREFIX + DEFAULT_DELIMITER + PRIORITY_ATTRIBUTE_NAME + DEFAULT_DELIMITER + VALUE_1; - public static final String byteThreshold_priority_1_key = MonitorThreshold.BYTE_THRESHOLD_PREFIX + DEFAULT_DELIMITER + PRIORITY_ATTRIBUTE_NAME + DEFAULT_DELIMITER + VALUE_1; - - public static final String APPORTIONMENT_ATTRIBUTE_NAME = "apportionment"; - public static final String IRRELEVANT_ATTRIBUTE_NAME_1 = "irrelevant_1"; - public static final String IRRELEVANT_ATTRIBUTE_NAME_2 = "irrelevant_2"; - - @SuppressWarnings("serial") - final Map attributes_with_category_1234 = new HashMap() { - { - put(CATEGORY_ATTRIBUTE_NAME, VALUE_1234); - } - }; - - @SuppressWarnings("serial") - final Map attributes_with_category_2345 = new HashMap() { - { - put(CATEGORY_ATTRIBUTE_NAME, VALUE_2345); - } - }; - - @SuppressWarnings("serial") - final Map attributes_with_category_value_empty = new HashMap() { - { - put(CATEGORY_ATTRIBUTE_NAME, ""); - } - }; - - @SuppressWarnings("serial") - final Map attributes_with_category_value_single_space = new HashMap() { - { - put(CATEGORY_ATTRIBUTE_NAME, " "); - } - }; - - @SuppressWarnings("serial") - final Map attributes_with_category_value_double_space = new HashMap() { - { - put(CATEGORY_ATTRIBUTE_NAME, " "); - } - }; - - @SuppressWarnings("serial") - final Map attributes_with_category_value_triple_space = new HashMap() { - { - put(CATEGORY_ATTRIBUTE_NAME, " "); - } - }; - - @SuppressWarnings("serial") - final Map attributes_with_category_3456 = new HashMap() { - { - put(CATEGORY_ATTRIBUTE_NAME, VALUE_3456); - } - }; - - @SuppressWarnings("serial") - final Map attributes_that_do_not_have_thresholds = new HashMap() { - { - put(IRRELEVANT_ATTRIBUTE_NAME_1, "0123456789"); - put(IRRELEVANT_ATTRIBUTE_NAME_2, "9876543210"); - } - }; - - private static final String processorId = UUID.randomUUID().toString(); - private static ProcessorLog logger = null; - - // threshold files. - private final String threshold_settings_allow_0_files = "src/test/resources/threshold_settings_allow_0.xml"; - private final String threshold_settings_allow_1669_bytes = "src/test/resources/threshold_settings_allow_1669_bytes.xml"; - private final String threshold_settings_allow_1_file = "src/test/resources/threshold_settings_allow_1.xml"; - private final String threshold_settings_allow_2_files = "src/test/resources/threshold_settings_allow_2.xml"; - private final String threshold_settings_allow_3336_bytes_default = "src/test/resources/threshold_settings_allow_3336_bytes_default.xml"; - private final String threshold_settings_allow_10_KB = "src/test/resources/threshold_settings_allow_10_KB.xml"; - private final String threshold_settings_allow_10_KB_And_2_KB = "src/test/resources/threshold_settings_allow_10_KB_and_2_KB.xml"; - private final String threshold_settings_allow_2_Default = "src/test/resources/threshold_settings_allow_2_default.xml"; - private final String threshold_settings_with_empty_attribute_value = "src/test/resources/threshold_settings_with_empty_attribute_value.xml"; - private final String threshold_settings_with_spaces_for_attribute_values = "src/test/resources/threshold_settings_with_spaces_for_attribute_values.xml"; - - @BeforeClass - public static void setUpClass() throws NoSuchMethodException, SecurityException { - } - - @Before - public void setUp() throws IOException, InitializationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, NoSuchMethodException, SecurityException { - runner = TestRunners.newTestRunner(new MonitorThreshold()); - TestMonitorThreshold.logger = new MockProcessorLog(processorId, runner.getProcessor()); - runner.setProperty(MonitorThreshold.OPT_COUNT_RESET_MINUTES, "1"); - runner.setProperty(MonitorThreshold.OPT_COUNTS_PERSISTENCE_FILE_PREFIX, "target/counts"); - runner.setProperty(MonitorThreshold.OPT_ADD_ATTRIBUTES, MonitorThreshold.ONLY_WHEN_THRESHOLD_EXCEEDED); - - primaryTestFileStream = new FileInputStream(primaryTestFile); - } - - @After - public void tearDown() throws IOException { - primaryTestFileStream.close(); - runner.clearTransferState(); - } - - //@Ignore("For now...") - @Test - public void testAccuratelyReflectsFileThresholdNotExceeded() throws IOException { - runner.enqueue(primaryTestFileStream, attributes_with_category_2345); - runner.setAnnotationData(getFileContents(threshold_settings_allow_1_file)); - // - // - // Default - // - // - // - runner.assertValid(); - runner.run(); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 1); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - List flowFiles = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - for (FlowFile flowFile : flowFiles) { - // since no thresholds exceeded, additional attributes should not be present - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345, null); - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345, null); - - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - assertEquals(byteCount_category_2345, null); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, null); - } - - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - //@Ignore("For now...") - @Test - public void testAccuratelyReflectsByteThresholdNotExceeded() throws IOException { - runner.enqueue(primaryTestFileStream, attributes_with_category_2345); - runner.setAnnotationData(getFileContents(threshold_settings_allow_1669_bytes)); - // - // - // Default - // - // - // - runner.assertValid(); - runner.run(); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 1); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - List flowFiles = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - for (FlowFile flowFile : flowFiles) { - - // since no thresholds exceeded, additional attributes should not be present - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345, null); - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345, null); - - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - assertEquals(byteCount_category_2345, null); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, null); - } - - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - //@Ignore("For now...") - @Test - public void testDoesNotExceedWhenNoThresholdsApply() throws IOException { - runner.enqueue(primaryTestFileStream, attributes_that_do_not_have_thresholds); // category attribute not present on this FlowFile - runner.setAnnotationData(getFileContents(threshold_settings_allow_1_file)); - // - // - // Default - // - // - // - runner.assertValid(); - runner.run(); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 1); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - List flowFiles = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - for (FlowFile flowFile : flowFiles) { - // since no thresholds exceeded, additional attributes should not be present - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345, null); - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345, null); - - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - assertEquals(byteCount_category_2345, null); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, null); - } - - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - //@Ignore("For now...") - @Test - public void testNotifiesWhenExceedsFileThresholdOf_0() throws IOException { - runner.setAnnotationData(getFileContents(threshold_settings_allow_0_files)); - // - // - // Default - // - // - // - - runner.assertValid(); - runner.enqueue(primaryTestFileStream, attributes_with_category_2345); - runner.run(); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 1); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - List flowFiles = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - for (FlowFile flowFile : flowFiles) { - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - assertEquals(Integer.parseInt(numThresholdsExceeded), 1); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - - // since a file threshold was exceeded, additional 'file' attributes should be present - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345, "1"); - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345, "0"); - - // since a file threshold was exceeded, and not a byte threshold, 'byte' attributes should not be present - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - assertEquals(byteCount_category_2345, null); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, null); - } - - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - //@Ignore("For now...") - @Test - public void testNotifiesWhenExceedsByteThresholdButNotFileThreshold() throws IOException { - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_2345, 10); //5*1,668 bytes = 8,340 bytes + 1,668 = 10,008 bytes which exceeds the threshold of 10k bytes - runner.setAnnotationData(getFileContents(threshold_settings_allow_10_KB)); - // - // - // Default - // - // - // - runner.assertValid(); - runner.run(10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - List flowFiles = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - int success = 0; - for (FlowFile flowFile : flowFiles) { - success++; - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - if (success > 5) { - assertEquals(Integer.parseInt(numThresholdsExceeded), 1); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - - // since a file threshold was not exceeded, additional 'file' attributes should not be present - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345, null); - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345, null); - - // since a byte threshold was exceeded, 'byte' attributes should be present - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - long byteCount = Long.parseLong(byteCount_category_2345); - assertEquals(byteCount, success * PRIMARY_TEST_FILE_SIZE); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, "10000"); - } - } - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - //@Ignore("For now...") - @Test - public void testUsesAttributeForCountingBytes() throws IOException { - final Map testAttributes = new HashMap() { - { - put(CATEGORY_ATTRIBUTE_NAME, VALUE_2345); - put("count", "1670"); - } - }; - addTestFilesToInputQueue(primaryTestFile, testAttributes, 1); //actual size = 1,668 bytes - - runner.setAnnotationData(getFileContents(threshold_settings_allow_1669_bytes)); - // - // - // Default - // - // - // - runner.setProperty(MonitorThreshold.ATTRIBUTE_TO_USE_FOR_COUNTING_BYTES_PROPERTY, "count"); - - runner.assertValid(); - runner.run(1); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 1); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - List flowFiles = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - for (FlowFile flowFile : flowFiles) { - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - assertEquals(Integer.parseInt(numThresholdsExceeded), 1); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - - // since a file threshold was not exceeded, additional 'file' attributes should not be present - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345, null); - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345, null); - - // since a byte threshold should have been exceeded, 'byte' attributes should be present - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - long byteCount = Long.parseLong(byteCount_category_2345); - assertEquals(byteCount, 1670); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, "1669"); - } - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - //@Ignore("For now...") - @Test - public void testIgnoresNegativeAttributeForCountingBytes() throws IOException { - final Map testAttributes = new HashMap() { - { - put(CATEGORY_ATTRIBUTE_NAME, VALUE_2345); - put("count", "-1"); - } - }; - addTestFilesToInputQueue(primaryTestFile, testAttributes, 2); //size = 1,668 * 2 = 3,336 bytes - - runner.setAnnotationData(getFileContents(threshold_settings_allow_1669_bytes)); - // - // - // Default - // - // - // - runner.setProperty(MonitorThreshold.ATTRIBUTE_TO_USE_FOR_COUNTING_BYTES_PROPERTY, "count"); - - runner.assertValid(); - runner.run(2); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 2); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - List flowFiles = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - int success = 0; - for (FlowFile flowFile : flowFiles) { - success++; - if (success == 1) { - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - assertEquals(Integer.parseInt(numThresholdsExceeded), 0); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - - // since a file threshold was not exceeded, additional 'file' attributes should not be present - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345, null); - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345, null); - - // since a byte threshold was not exceeded, 'byte' attributes should not be present - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - assertEquals(byteCount_category_2345, null); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, null); - } else { - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - assertEquals(Integer.parseInt(numThresholdsExceeded), 1); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - - // since a file threshold was not exceeded, additional 'file' attributes should not be present - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345, null); - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345, null); - - // since a byte threshold should have been exceeded, 'byte' attributes should be present - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - long byteCount = Long.parseLong(byteCount_category_2345); - assertEquals(byteCount, 3336); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, "1669"); - } - } - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - //@Ignore("For now...") - @Test - public void testNotifiesWhenExceedsFileThresholdOf_2() throws IOException { - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_2345, 5); //2 will be allowed, 3 won't - runner.setAnnotationData(getFileContents(threshold_settings_allow_2_files)); - // - // - // Default - // - // - // - runner.assertValid(); - runner.run(5); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 5); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - List flowFiles = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - int success = 0; - for (FlowFile flowFile : flowFiles) { - success++; - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - if (success > 2) { - assertEquals(Integer.parseInt(numThresholdsExceeded), 1); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - - // since a file threshold was exceeded, additional 'file' attributes should be present - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - int fileCount = Integer.parseInt(fileCount_category_2345); - assertEquals(fileCount, success); - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345, "2"); - - // since a file threshold was exceeded, and not a byte threshold, 'byte' attributes should not be present - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - assertEquals(byteCount_category_2345, null); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, null); - - } - } - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - //@Ignore("For now...") - @Test - public void testNotifiesForEmptyValue() throws IOException { - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_value_empty, 2); //1 will be allowed, 1 won't - runner.setAnnotationData(getFileContents(threshold_settings_with_empty_attribute_value)); - // - // - // Default - // - // - // - - runner.assertValid(); - runner.run(2); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 2); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - List flowFiles = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - int success = 0; - for (FlowFile flowFile : flowFiles) { - success++; - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - if (success > 1) { - assertEquals(Integer.parseInt(numThresholdsExceeded), 2); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - } - } - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - //@Ignore("For now...") - @Test - public void testForSpaces() throws IOException { - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_value_single_space, 2); //1 will be allowed, 1 won't - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_value_double_space, 2); //1 will be allowed, 1 won't - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_value_triple_space, 2); //should use default; 1 will be allowed, 1 won't - runner.setAnnotationData(getFileContents(threshold_settings_with_spaces_for_attribute_values)); - // - // - // Default - // - // - // - // - - runner.assertValid(); - runner.run(6); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 6); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - List flowFiles = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - - for (int currentFile = 0; currentFile < flowFiles.size(); currentFile++) { - MockFlowFile flowFile = flowFiles.get(currentFile); - - dumpAttributes(flowFile); // for manual verification of this test - - if ((currentFile == 1) || (currentFile == 3) || (currentFile == 5)) { - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - assertEquals(Integer.parseInt(numThresholdsExceeded), 2); - } - } - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - //@Ignore("For now...") - @Test - public void testUsesDefaultFileThresholdWhenValueEncounteredWithNoThreshold() throws IOException { - runner.setProperty(MonitorThreshold.OPT_AGGREGATE_COUNTS_WHEN_NO_THRESHOLD_PROVIDED, "false"); - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_2345, 3); // should use default - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_3456, 3); // should use default - runner.setAnnotationData(getFileContents(threshold_settings_allow_2_Default)); - // - // - // Default - // - // - // - runner.assertValid(); - runner.run(6); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 6); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - // compare expected to what was produced - List flowFilesProduced = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - int fileNumber = 0; - for (FlowFile flowFile : flowFilesProduced) { - fileNumber++; - - if ((fileNumber == 3) | (fileNumber == 6)) { - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - assertEquals(Integer.parseInt(numThresholdsExceeded), 1); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - - if (fileNumber == 3) { - // since a file threshold was exceeded, additional 'file' attributes should be present - String fileCount_category_2345_value = flowFile.getAttribute(fileCount_category_2345_key); - int fileCount = Integer.parseInt(fileCount_category_2345_value); - assertEquals(fileCount, fileNumber); - String fileThreshold_category_2345_value = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345_value, "2"); - - // since a file threshold was exceeded, and not a byte threshold, 'byte' attributes should not be present - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - assertEquals(byteCount_category_2345, null); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, null); - } - - if (fileNumber == 6) { - // since a file threshold was exceeded, additional 'file' attributes should be present - String fileCount_category_3456_value = flowFile.getAttribute(fileCount_category_3456_key); - int fileCount = Integer.parseInt(fileCount_category_3456_value); - assertEquals(fileCount, 3); - - String fileThreshold_category_3456_value = flowFile.getAttribute(fileThreshold_category_3456_key); - assertEquals(fileThreshold_category_3456_value, "2"); - - // since a file threshold was exceeded, and not a byte threshold, 'byte' attributes should not be present - String byteCount_category_3456 = flowFile.getAttribute(byteCount_category_3456_key); - assertEquals(byteCount_category_3456, null); - String byteThreshold_category_3456 = flowFile.getAttribute(byteThreshold_category_3456_key); - assertEquals(byteThreshold_category_3456, null); - } - } - } - - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - //@Ignore("For now...") - @Test - public void testUsesDefaultByteThresholdWhenValueEncounteredWithNoThreshold() throws IOException { - runner.setProperty(MonitorThreshold.OPT_AGGREGATE_COUNTS_WHEN_NO_THRESHOLD_PROVIDED, "false"); - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_2345, 10); // should use default - runner.setAnnotationData(getFileContents(threshold_settings_allow_3336_bytes_default)); - // - // - // Default - // - // - // - runner.assertValid(); - runner.run(10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - // compare expected to what was produced - List flowFilesProduced = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - int fileNumber = 0; - for (FlowFile flowFile : flowFilesProduced) { - fileNumber++; - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - if (fileNumber <= 2) { - assertEquals(Integer.parseInt(numThresholdsExceeded), 0); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - } else { - assertEquals(Integer.parseInt(numThresholdsExceeded), 1); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - - // since a byte threshold was exceeded, additional 'byte' attributes should be present - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - int byteCount = Integer.parseInt(byteCount_category_2345); - assertEquals(byteCount, (fileNumber * PRIMARY_TEST_FILE_SIZE)); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, "3336"); - - // since a file threshold was not exceeded, 'file' attributes should not be present - String fileCount_category_2345_value = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345_value, null); - - String fileThreshold_category_2345_value = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345_value, null); - } - } - - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - //@Ignore("For now...") - @Test - public void testHandlesMultipleThresholdSets() throws IOException { - for (int i = 0; i < 10; i++) { - final Map metadata = new HashMap(); - metadata.put(PRIORITY_ATTRIBUTE_NAME, VALUE_1); //10*1,668 bytes = 16,680 bytes which exceeds the threshold of 2k bytes. 2nd-10th files should exceed. - metadata.put(CATEGORY_ATTRIBUTE_NAME, VALUE_2345); //5*1,668 bytes = 8,340 bytes + 1,668 = 10,008 bytes which exceeds the threshold of 10k bytes. 6th through 10th files should exceed. - FileInputStream testFileStream = new FileInputStream(primaryTestFile); - runner.enqueue(testFileStream, metadata); - testFileStream.close(); - } - runner.setAnnotationData(getFileContents(threshold_settings_allow_10_KB_And_2_KB)); - // - // - // Default - // - // - // - // Default - // - // - // - // - // 'priority' value of '1' at 2000 bytes will be the most limiting attribute, allowing only 1 file that does not exceed. - // however, the 'category' value of '2345' threshold is 10,000, which means 5 will not exceed, - // before 'all' (both priority and category) thresholds are exceeded. - runner.assertValid(); - runner.run(10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - // compare expected to what was produced - List flowFilesProduced = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - int fileNumber = 0; - for (FlowFile flowFile : flowFilesProduced) { - fileNumber++; - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - if (fileNumber == 1) { - assertEquals(Integer.parseInt(numThresholdsExceeded), 0); - assertEquals(Integer.parseInt(numApplicableThresholds), 4); - } else if ((fileNumber >= 2) & (fileNumber <= 5)) { - assertEquals(Integer.parseInt(numThresholdsExceeded), 1); - assertEquals(Integer.parseInt(numApplicableThresholds), 4); - - // since a byte threshold was exceeded, additional 'byte' attributes should be present - String byteCount_priority_1_Value = flowFile.getAttribute(byteCount_priority_1_key); - int byteCount = Integer.parseInt(byteCount_priority_1_Value); - assertEquals(byteCount, (fileNumber * PRIMARY_TEST_FILE_SIZE)); - String byteThreshold_priority_1_Value = flowFile.getAttribute(byteThreshold_priority_1_key); - assertEquals(byteThreshold_priority_1_Value, "2000"); - - // since a file threshold was not exceeded, 'file' attributes should not be present - String fileCount_priority_1_Value = flowFile.getAttribute(fileCount_priority_1_key); - assertEquals(fileCount_priority_1_Value, null); - String fileThreshold_priority_1_Value = flowFile.getAttribute(fileThreshold_priority_1_key); - assertEquals(fileThreshold_priority_1_Value, null); - } else if (fileNumber > 5) { - assertEquals(Integer.parseInt(numThresholdsExceeded), 2); - assertEquals(Integer.parseInt(numApplicableThresholds), 4); - - // since a byte thresholds were exceeded, additional 'byte' attributes should be present - String byteCount_priority_1_Value = flowFile.getAttribute(byteCount_priority_1_key); - int byteCount_priority_1 = Integer.parseInt(byteCount_priority_1_Value); - assertEquals(byteCount_priority_1, (fileNumber * PRIMARY_TEST_FILE_SIZE)); - String byteThreshold_priority_1_Value = flowFile.getAttribute(byteThreshold_priority_1_key); - assertEquals(byteThreshold_priority_1_Value, "2000"); - - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - int byteCount = Integer.parseInt(byteCount_category_2345); - assertEquals(byteCount, (fileNumber * PRIMARY_TEST_FILE_SIZE)); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, "10000"); - - // since a file threshold was not exceeded, 'file' attributes should not be present - String fileCount_priority_1_Value = flowFile.getAttribute(fileCount_priority_1_key); - assertEquals(fileCount_priority_1_Value, null); - String fileThreshold_priority_1_Value = flowFile.getAttribute(fileThreshold_priority_1_key); - assertEquals(fileThreshold_priority_1_Value, null); - - String fileCount_category_2345_value = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345_value, null); - String fileThreshold_category_2345_value = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345_value, null); - } - } - - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - @Ignore("This test takes WAAAAY too long") - @Test - public void testCountsResetAtExpectedTime() throws FileNotFoundException, IOException { - // figure out what the rollover time should be. - final Calendar now = Calendar.getInstance(TimeZone.getTimeZone("GMT")); - final Calendar rolloverTime = Calendar.getInstance(TimeZone.getTimeZone("GMT")); - rolloverTime.add(Calendar.HOUR, 0); - rolloverTime.add(Calendar.MINUTE, 0); - rolloverTime.set(Calendar.SECOND, 10); - rolloverTime.set(Calendar.MILLISECOND, 0); - - // if the rollover time is less than 3 seconds, we'll add another minute so that we are - // sure that we have time to process all of the files before the rollover time. - if (rolloverTime.getTimeInMillis() - now.getTimeInMillis() < 3000) { - rolloverTime.add(Calendar.MINUTE, 1); - } - - final long millisToWait = rolloverTime.getTimeInMillis() - now.getTimeInMillis(); - - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_2345, 20); - - final String rolloverTimeAsString - = rolloverTime.get(Calendar.HOUR_OF_DAY) - + ":" + rolloverTime.get(Calendar.MINUTE) - + ":" + rolloverTime.get(Calendar.SECOND); - runner.setProperty(MonitorThreshold.OPT_COUNT_RESET_TIME, rolloverTimeAsString); - runner.setAnnotationData(getFileContents(threshold_settings_allow_10_KB)); - // - // - // Default - // - // - // - runner.assertValid(); - runner.run(10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - - try { - // Wait 60 seconds to ensure that the rollover happens. - System.out.println("Waiting " + (millisToWait / 1000) + " seconds to test that counts are cleared at appropriate time"); - Thread.sleep(millisToWait); - } catch (final Exception e) { - } - - runner.run(10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 20); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - @Ignore("This test takes WAAAAY too long") - @Test - public void testCountsResetAfterExpectedMinutesToWaitHasPassed() throws IOException { - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_2345, 20); - runner.setProperty(MonitorThreshold.OPT_FREQUENCY_TO_SAVE_COUNTS_SECS, "45"); - final MonitorThreshold monitor = (MonitorThreshold) runner.getProcessor(); - runner.setAnnotationData(getFileContents(threshold_settings_allow_10_KB)); - // - // - // Default - // - // - // - assertFalse(monitor.shouldSaveCounts(runner.getProcessContext())); - runner.assertValid(); - runner.run(10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - - try { - // Wait 60 seconds to ensure that the rollover happens. - System.out.println("Waiting 60 seconds to ensure that the rollover happens"); - Thread.sleep(60000L); - } catch (final Exception e) { - } - - assertTrue(monitor.shouldSaveCounts(runner.getProcessContext())); - runner.run(10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 20); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - //@Ignore("For now...") - @SuppressWarnings("unchecked") - @Test - public void testCountsPersisted() throws IOException, ClassNotFoundException { - runner.setProperty(MonitorThreshold.OPT_AGGREGATE_COUNTS_WHEN_NO_THRESHOLD_PROVIDED, "false"); - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_1234, 10); - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_2345, 10); - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_3456, 10); - runner.setAnnotationData(getFileContents(threshold_settings_allow_2_Default)); - // - // - // Default - // - // - // - runner.assertValid(); - runner.run(30); - - final MonitorThreshold monitor = (MonitorThreshold) runner.getProcessor(); - final File countsFile = new File("target/counts"); - - monitor.saveCounts(countsFile, logger); - - final FileInputStream fis = new FileInputStream(countsFile); - final ObjectInputStream ois = new ObjectInputStream(fis); - - ConcurrentHashMap> state; - try { - final Object obj = ois.readObject(); - state = (ConcurrentHashMap>) obj; - } finally { - ois.close(); - } - -// final CompareRecord defaultRecord = state.get(CATEGORY_ATTRIBUTE_NAME).get(MonitorThreshold.DEFAULT_THRESHOLDS_KEY); -// assertNotNull(defaultRecord); -// assertEquals(0, defaultRecord.getFileCount()); //default used for providing thresholds, not for counting - assertEquals(3, state.get(CATEGORY_ATTRIBUTE_NAME).size()); - - final CompareRecord countsForValue_1234 = state.get(CATEGORY_ATTRIBUTE_NAME).get("1234"); - assertNotNull(countsForValue_1234); - assertEquals(10, countsForValue_1234.getFileCount()); - assertEquals(16680, countsForValue_1234.getByteCount()); - - final CompareRecord countsForValue2345 = state.get(CATEGORY_ATTRIBUTE_NAME).get("2345"); - assertNotNull(countsForValue2345); - assertEquals(10, countsForValue2345.getFileCount()); - assertEquals(16680, countsForValue2345.getByteCount()); - - final CompareRecord countsForValue3456 = state.get(CATEGORY_ATTRIBUTE_NAME).get("3456"); - assertNotNull(countsForValue3456); - assertEquals(10, countsForValue3456.getFileCount()); - assertEquals(16680, countsForValue3456.getByteCount()); - - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - @SuppressWarnings("unchecked") - //@Ignore("For now...") - @Test - public void testExpectedCountsReloadedFromDiskAfterNiFiRestart() throws FileNotFoundException, IOException, ClassNotFoundException, NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException { - runner.setProperty(MonitorThreshold.OPT_AGGREGATE_COUNTS_WHEN_NO_THRESHOLD_PROVIDED, "false"); - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_2345, 10); - runner.setAnnotationData(getFileContents(threshold_settings_allow_2_Default)); // will use default threshold - // - // - // Default - // - // - // - runner.assertValid(); - runner.run(10); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - - final MonitorThreshold compareProcessor = (MonitorThreshold) runner.getProcessor(); - final File countsFile = new File("target/counts"); - - compareProcessor.saveCounts(countsFile, logger); - - //Simulate a NiFi restart by creating a new runner, with a new CompareCountsToThreshold class - TestRunner differentRunner = TestRunners.newTestRunner(new MonitorThreshold()); - differentRunner.setProperty(MonitorThreshold.OPT_AGGREGATE_COUNTS_WHEN_NO_THRESHOLD_PROVIDED, "false"); - differentRunner.setProperty(MonitorThreshold.OPT_COUNT_RESET_MINUTES, "1"); - differentRunner.setProperty(MonitorThreshold.OPT_COUNTS_PERSISTENCE_FILE_PREFIX, "target/counts"); - primaryTestFileStream = new FileInputStream(primaryTestFile); - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_2345, 1); - runner.setAnnotationData(getFileContents(threshold_settings_allow_2_Default)); // will use default threshold - // - // - // Default - // - // - // - runner.assertValid(); - runner.run(1); - - //Prove that the old state was successfully read from disk. - final Field countsField = MonitorThreshold.class.getDeclaredField("counts"); - countsField.setAccessible(true); - - final ConcurrentHashMap> state - = (ConcurrentHashMap>) countsField.get(runner.getProcessor()); - - assertEquals(1, state.get(CATEGORY_ATTRIBUTE_NAME).size()); // only one threshold (2345) was checked - - final CompareRecord countsForValue_2345 = state.get(CATEGORY_ATTRIBUTE_NAME).get("2345"); - assertNotNull(countsForValue_2345); - assertEquals(11, countsForValue_2345.getFileCount()); // would have been 1 if old state was not read from disk - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - @SuppressWarnings("unchecked") - //@Ignore("For now...") - @Test - public void testFileCountsRecordedAsExpected() throws IOException, NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException { - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_1234, 10); // only one will exceed - runner.setAnnotationData(getFileContents(threshold_settings_allow_2_Default)); - // - // - // Default - // - // - // - runner.assertValid(); - runner.run(10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - - final Field countsField = MonitorThreshold.class.getDeclaredField("counts"); - countsField.setAccessible(true); - - final ConcurrentHashMap> state - = (ConcurrentHashMap>) countsField.get(runner.getProcessor()); - - assertEquals(1, state.get(CATEGORY_ATTRIBUTE_NAME).size()); // only one threshold (1234) was checked - - final CompareRecord countsForValue_1234 = state.get(CATEGORY_ATTRIBUTE_NAME).get("1234"); - assertNotNull(countsForValue_1234); - assertEquals(10, countsForValue_1234.getFileCount()); - - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - @SuppressWarnings("unchecked") - //@Ignore("For now...") - @Test - public void testByteCountsRecordedAsExpected() throws IOException, NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException { - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_1234, 10); // only one will exceed - runner.setAnnotationData(getFileContents(threshold_settings_allow_2_Default)); - // - // - // Default - // - // - // - runner.assertValid(); - runner.run(10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - - final Field countsField = MonitorThreshold.class.getDeclaredField("counts"); - countsField.setAccessible(true); - - final ConcurrentHashMap> state - = (ConcurrentHashMap>) countsField.get(runner.getProcessor()); - - assertEquals(1, state.get(CATEGORY_ATTRIBUTE_NAME).size()); // only one threshold (1234) was checked - - final CompareRecord countsForValue_1234 = state.get(CATEGORY_ATTRIBUTE_NAME).get("1234"); - assertNotNull(countsForValue_1234); - - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - assertEquals((PRIMARY_TEST_FILE_SIZE * 10), countsForValue_1234.getByteCount()); - - } - - //@Ignore("For now...") - @Test - public void testOmitsAdditionOfExceededAttributesWhenRequested() throws IOException { - - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_2345, 2); //size = 1,668 * 2 = 3,336 bytes - - runner.setAnnotationData(getFileContents(threshold_settings_allow_1669_bytes)); - // - // - // Default - // - // - // - runner.setProperty(MonitorThreshold.OPT_ADD_ATTRIBUTES, MonitorThreshold.NEVER); - - runner.assertValid(); - runner.run(2); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 2); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - List flowFiles = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - int success = 0; - for (FlowFile flowFile : flowFiles) { - success++; - if (success == 1) { - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - assertEquals(Integer.parseInt(numThresholdsExceeded), 0); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - - // since a file threshold was not exceeded, additional 'file' attributes should not be present - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345, null); - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345, null); - - // since a byte threshold was not exceeded, 'byte' attributes should not be present - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - assertEquals(byteCount_category_2345, null); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, null); - } else { - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - assertEquals(Integer.parseInt(numThresholdsExceeded), 1); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - - // since a file threshold was not exceeded, additional 'file' attributes should not be present - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345, null); - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345, null); - - // even though a byte threshold was exceeded, 'byte' attributes should not be present since Add Attributes was set to 'Never' - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - assertEquals(byteCount_category_2345, null); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, null); - } - } - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - @Test - public void testAlwaysAddsCountAndThresholdAttributesWhenRequested() throws IOException { - - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_2345, 2); //size = 1,668 * 2 = 3,336 bytes - - runner.setAnnotationData(getFileContents(threshold_settings_allow_1669_bytes)); - // - // - // Default - // - // - // - runner.setProperty(MonitorThreshold.OPT_ADD_ATTRIBUTES, MonitorThreshold.ALWAYS); - - runner.assertValid(); - runner.run(2); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 2); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - List flowFiles = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - int success = 0; - for (FlowFile flowFile : flowFiles) { - success++; - if (success == 1) { - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - assertEquals(Integer.parseInt(numThresholdsExceeded), 0); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - - // while a file threshold was not exceeded, additional 'file' attributes should be present since Add Attributes was set to 'Always' - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345, "1"); - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345, "2"); - - // while a byte threshold was not exceeded, 'byte' attributes should be present since Add Attributes was set to 'Always' - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - assertEquals(byteCount_category_2345, "1668"); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, "1669"); - } else { - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - assertEquals(Integer.parseInt(numThresholdsExceeded), 1); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - - // while a file threshold was not exceeded, additional 'file' attributes should be present since Add Attributes was set to 'Always' - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345, "2"); - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345, "2"); - - // a byte threshold was exceeded, 'byte' attributes should be present especially since Add Attributes was set to 'Always' - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - assertEquals(byteCount_category_2345, "3336"); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, "1669"); - } - } - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - @Test - @SuppressWarnings("unchecked") - public void testMaintainCountsWhenNoThresholdProvided() throws IOException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, NoSuchMethodException, SecurityException, InitializationException, NoSuchFieldException { - // part 1 of test: Maintain separate counts when no threshold provided - runner.setProperty(MonitorThreshold.OPT_AGGREGATE_COUNTS_WHEN_NO_THRESHOLD_PROVIDED, "false"); - - //Send FlowFiles (to the processor) with values for which there are no thresholds - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_2345, 3); // should use default - runner.setAnnotationData(getFileContents(threshold_settings_allow_3336_bytes_default)); - // - // - // Default - // - // - // - runner.assertValid(); - runner.run(3); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 3); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - //Verify that counts are maintained, even though there was no threshold for the value - List flowFiles = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - int success = 0; - for (FlowFile flowFile : flowFiles) { - success++; - if (success == 3) { - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - assertEquals(Integer.parseInt(numThresholdsExceeded), 1); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - - // since a file threshold was not exceeded, additional 'file' attributes should not be present - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345, null); - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345, null); - - // since a byte threshold was exceeded, additional 'byte' attributes should be present - String byteCount_category_2345_Value = flowFile.getAttribute(byteCount_category_2345_key); - int byteCount_category_2345 = Integer.parseInt(byteCount_category_2345_Value); - assertEquals(byteCount_category_2345, (success * PRIMARY_TEST_FILE_SIZE)); - String byteThreshold_category_2345_Value = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345_Value, "3336"); - } else { - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - assertEquals(Integer.parseInt(numThresholdsExceeded), 0); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - - // since a file threshold was not exceeded, additional 'file' attributes should not be present - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345, null); - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345, null); - - // since a byte threshold was not exceeded, additional 'byte' attributes should not be present - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - assertEquals(byteCount_category_2345, null); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, null); - } - } - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - //============================================================================================================================================== - tearDown(); - setUp(); - // part 2 of test: Maintain aggregate count when no threshold provided - runner.setProperty(MonitorThreshold.OPT_AGGREGATE_COUNTS_WHEN_NO_THRESHOLD_PROVIDED, "true"); - - //Send FlowFiles (to the processor) with values for which there are no thresholds - addTestFilesToInputQueue(primaryTestFile, attributes_with_category_2345, 3); // should use default - runner.setAnnotationData(getFileContents(threshold_settings_allow_3336_bytes_default)); - // - // - // Default - // - // - // - runner.assertValid(); - runner.run(3); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 3); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - //Verify that counts were maintained, despite there being no threshold for the value that was encountered - flowFiles = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - success = 0; - for (FlowFile flowFile : flowFiles) { - success++; - if (success == 3) { - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - assertEquals(Integer.parseInt(numThresholdsExceeded), 1); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - - // since a file threshold was not exceeded, additional 'file' attributes should not be present - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345, null); - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345, null); - - // since a byte threshold was exceeded, additional 'byte' attributes should be present - String byteCount_category_2345_value = flowFile.getAttribute(byteCount_category_2345_key); - int byteCount_category_2345 = Integer.parseInt(byteCount_category_2345_value); - assertEquals(byteCount_category_2345, (success * PRIMARY_TEST_FILE_SIZE)); - String byteThreshold_category_2345_Value = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345_Value, "3336"); - - // since we should be aggregating counts, verify that default counts were incremented - final Field countsField = MonitorThreshold.class.getDeclaredField("counts"); - countsField.setAccessible(true); - - final ConcurrentHashMap> counts - = (ConcurrentHashMap>) countsField.get(runner.getProcessor()); - - assertEquals(1, counts.get(CATEGORY_ATTRIBUTE_NAME).size()); - - final CompareRecord countsForValue_Default = counts.get(CATEGORY_ATTRIBUTE_NAME).get("Default"); - assertNotNull(countsForValue_Default); - assertEquals(5004, countsForValue_Default.getByteCount()); - - } else { - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - assertEquals(Integer.parseInt(numThresholdsExceeded), 0); - assertEquals(Integer.parseInt(numApplicableThresholds), 2); - - // since a file threshold was not exceeded, additional 'file' attributes should not be present - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - assertEquals(fileCount_category_2345, null); - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - assertEquals(fileThreshold_category_2345, null); - - // since a byte threshold was not exceeded, additional 'byte' attributes should not be present - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - assertEquals(byteCount_category_2345, null); - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - assertEquals(byteThreshold_category_2345, null); - } - } - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - //@Ignore("For now...") - @Test - public void testMaximumAttributePairsToAddWhenMultipleThresholdsExceeded() throws IOException { - runner.setProperty(MonitorThreshold.MAX_ATTRIBUTE_PAIRS_TO_ADD_PROPERTY, "1"); - - for (int i = 0; i < 10; i++) { - final Map metadata = new HashMap(); - metadata.put(PRIORITY_ATTRIBUTE_NAME, VALUE_1); //10*1,668 bytes = 16,680 bytes which exceeds the threshold of 2k bytes. 2nd-10th files should exceed. - metadata.put(CATEGORY_ATTRIBUTE_NAME, VALUE_2345); //5*1,668 bytes = 8,340 bytes + 1,668 = 10,008 bytes which exceeds the threshold of 10k bytes. 6th through 10th files should exceed. - FileInputStream testFileStream = new FileInputStream(primaryTestFile); - runner.enqueue(testFileStream, metadata); - testFileStream.close(); - } - runner.setAnnotationData(getFileContents(threshold_settings_allow_10_KB_And_2_KB)); - // - // - // Default - // - // - // - // Default - // - // - // - // - // 'priority' value of '1' at 2000 bytes will be the most limiting attribute, allowing only 1 file that does not exceed. - // however, the 'category' value of '2345' threshold is 10,000, which means 5 will not exceed, - // before 'all' (both priority and category) thresholds are exceeded. - runner.assertValid(); - runner.run(10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_SUCCESS, 10); - runner.assertTransferCount(MonitorThreshold.RELATIONSHIP_FAILURE, 0); - - // compare expected to what was produced - List flowFilesProduced = runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS); - int fileNumber = 0; - for (FlowFile flowFile : flowFilesProduced) { - fileNumber++; - int numThresholdExceededAttributePairsFound = 0; - String numThresholdsExceeded = flowFile.getAttribute(MonitorThreshold.NUM_THRESHOLDS_EXCEEDED_KEY); - String numApplicableThresholds = flowFile.getAttribute(MonitorThreshold.NUM_APPLICABLE_THRESHOLDS_KEY); - - if (fileNumber == 1) { - assertEquals(Integer.parseInt(numThresholdsExceeded), 0); - assertEquals(Integer.parseInt(numApplicableThresholds), 4); - numThresholdExceededAttributePairsFound = countNumberThresholdExceededAttributePairsFound(flowFile); - assertEquals(numThresholdExceededAttributePairsFound, 0); - } else if ((fileNumber >= 2) & (fileNumber <= 5)) { - assertEquals(Integer.parseInt(numThresholdsExceeded), 1); - assertEquals(Integer.parseInt(numApplicableThresholds), 4); - numThresholdExceededAttributePairsFound = countNumberThresholdExceededAttributePairsFound(flowFile); - assertEquals(numThresholdExceededAttributePairsFound, 1); - } else if (fileNumber > 5) { - assertEquals(Integer.parseInt(numThresholdsExceeded), 2); - assertEquals(Integer.parseInt(numApplicableThresholds), 4); - numThresholdExceededAttributePairsFound = countNumberThresholdExceededAttributePairsFound(flowFile); - assertEquals(numThresholdExceededAttributePairsFound, 1); - } - } - assertEquals(primaryTestFile.length(), runner.getFlowFilesForRelationship(MonitorThreshold.RELATIONSHIP_SUCCESS).iterator().next().getSize()); - //dumpCounts(runner.getProcessContext()); // for manual verification of this test - } - - private int countNumberThresholdExceededAttributePairsFound(FlowFile flowFile) { - int numThresholdExceededAttributesFound = 0; - String fileCount_category_2345 = flowFile.getAttribute(fileCount_category_2345_key); - if (fileCount_category_2345 != null) { - numThresholdExceededAttributesFound++; - } - - String fileThreshold_category_2345 = flowFile.getAttribute(fileThreshold_category_2345_key); - if (fileThreshold_category_2345 != null) { - numThresholdExceededAttributesFound++; - } - - String byteCount_category_2345 = flowFile.getAttribute(byteCount_category_2345_key); - if (byteCount_category_2345 != null) { - numThresholdExceededAttributesFound++; - } - - String byteThreshold_category_2345 = flowFile.getAttribute(byteThreshold_category_2345_key); - if (byteThreshold_category_2345 != null) { - numThresholdExceededAttributesFound++; - } - - String fileCount_category_3456 = flowFile.getAttribute(fileCount_category_3456_key); - if (fileCount_category_3456 != null) { - numThresholdExceededAttributesFound++; - } - - String fileThreshold_category_3456 = flowFile.getAttribute(fileThreshold_category_3456_key); - if (fileThreshold_category_3456 != null) { - numThresholdExceededAttributesFound++; - } - - String byteCount_category_3456 = flowFile.getAttribute(byteCount_category_3456_key); - if (byteCount_category_3456 != null) { - numThresholdExceededAttributesFound++; - } - - String byteThreshold_category_3456 = flowFile.getAttribute(byteThreshold_category_3456_key); - if (byteThreshold_category_3456 != null) { - numThresholdExceededAttributesFound++; - } - - String fileCount_priority_1 = flowFile.getAttribute(fileCount_priority_1_key); - if (fileCount_priority_1 != null) { - numThresholdExceededAttributesFound++; - } - - String fileThreshold_priority_1 = flowFile.getAttribute(fileThreshold_priority_1_key); - if (fileThreshold_priority_1 != null) { - numThresholdExceededAttributesFound++; - } - - String byteCount_priority_1 = flowFile.getAttribute(byteCount_priority_1_key); - if (byteCount_priority_1 != null) { - numThresholdExceededAttributesFound++; - } - - String byteThreshold_priority_1 = flowFile.getAttribute(byteThreshold_priority_1_key); - if (byteThreshold_priority_1 != null) { - numThresholdExceededAttributesFound++; - } - return numThresholdExceededAttributesFound / 2; - } - - // helper methods - private String getFileContents(String filepath) throws IOException { - String str; - String result = new String(); - BufferedReader in = null; - try { - in = new BufferedReader(new FileReader(filepath)); - while ((str = in.readLine()) != null) { - result += str; - } - } catch (Exception ex) { - } finally { - if (in != null) { - in.close(); - } - } - return result; - } - - private void addTestFilesToInputQueue(File testFile, final Map attributes, int number) throws FileNotFoundException, - IOException { - FileInputStream testFileStream; - for (int i = 0; i < number; i++) { - testFileStream = new FileInputStream(testFile); - runner.enqueue(testFileStream, attributes); - testFileStream.close(); - } - } - - private void dumpCounts(ProcessContext processContext) { - ((MonitorThreshold) runner.getProcessor()).logCounts(processContext, logger); - } - - private void dumpAttributes(MockFlowFile flowFile) { - Map attrs = flowFile.getAttributes(); - Set attributes = attrs.keySet(); - - System.out.println("\n=============== Next File: ================"); - for (String attr : attributes) { - String value = flowFile.getAttribute(attr); - System.out.println("Attribute Name: " + attr + " Value: '" + value + "'"); - } - } -} diff --git a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/testFile b/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/testFile deleted file mode 100755 index 514579114d..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/testFile +++ /dev/null @@ -1,23 +0,0 @@ -This is the test file used in MonitorThreshold unit tests. -It's content is irrelevant (hence the gibberish below), -since the primary focus is on its attributes; -which are setup in the unit tests. -However, its size is relevant, as it affects the unit tests. -The size of this file should be 1,668 bytes. -There is nothing special about the number 1,668. -It just happened to be the size of the test file that was used for most of the unit tests for the precursor processor, -and it was easier to create a file containing 1,668 bytes than to modify all of the unit tests. -Besides, what difference does it make how big the test file is, as long as it is a known quantity. - 1 2 3 4 5 6 7 8 -012345678901234567890123456789012345678901234567890123456789012345678901234567890 -dfadfsfgasdfgdgbhadg2346475789087908907u3aDFAdfu5675868978aswgt45yeryh56767768rt -dfsfg567878649468947957989078907890689068fjfhjshhjjtre57yjuyju469r4y5h65yuy65476 -DFSgfgfsd3578684686fghsd579057890fgadghadghsfyhjsffnsfgn65756757846956h6yh6h6sgh -DFSgfgfsd3578684686fghsd579057890fgadghadghsfyhjsffnsfgn65756757846956h6yh6h6sgh -dfsfg567878649468947957989078907890689068fjfhjshhjjtre57yjuyju469r4y5h65yuy65476 -dfsfg567878649468947957989078907890689068fjfhjshhjjtre57yjuyju469r4y5h65yuy65476 -dfsfg567878649468947957989078907890689068fjfhjshhjjtre57yjuyju469r4y5h65yuy65476 -dfsfg567878649468947957989078907890689068fjfhjshhjjtre57yjuyju469r4y5h65yuy65476 -dfsfg567878649468947957989078907890689068fjfhjshhjjtre57yjuyju469r4y5h65yuy65476 -wx -01234567890123456789012345678901234567890123456789012345678901234567890123456789 \ No newline at end of file diff --git a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_0.xml b/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_0.xml deleted file mode 100644 index 9fdee4685e..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_0.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - Default - - - diff --git a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_1.xml b/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_1.xml deleted file mode 100644 index 672d23d19c..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_1.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - Default - - - diff --git a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_10_KB.xml b/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_10_KB.xml deleted file mode 100644 index 6f59ca3cea..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_10_KB.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - Default - - - diff --git a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_10_KB_and_2_KB.xml b/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_10_KB_and_2_KB.xml deleted file mode 100644 index f1b864898c..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_10_KB_and_2_KB.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - Default - - - - Default - - - - diff --git a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_1669_bytes.xml b/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_1669_bytes.xml deleted file mode 100644 index 656679c4b8..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_1669_bytes.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - Default - - - diff --git a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_2.xml b/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_2.xml deleted file mode 100644 index 8c92214be5..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_2.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - Default - - - diff --git a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_2_default.xml b/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_2_default.xml deleted file mode 100644 index 86e77caa2e..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_2_default.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - Default - - - diff --git a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_3336_bytes_default.xml b/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_3336_bytes_default.xml deleted file mode 100644 index fdf96f217d..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_allow_3336_bytes_default.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - Default - - - diff --git a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_with_empty_attribute_value.xml b/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_with_empty_attribute_value.xml deleted file mode 100644 index a549272064..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_with_empty_attribute_value.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - Default - - - diff --git a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_with_spaces_for_attribute_values.xml b/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_with_spaces_for_attribute_values.xml deleted file mode 100644 index 894b90313b..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/processor/src/test/resources/threshold_settings_with_spaces_for_attribute_values.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - Default - - - - diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/pom.xml b/nifi/nar-bundles/monitor-threshold-bundle/ui/pom.xml deleted file mode 100644 index acdb461895..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/pom.xml +++ /dev/null @@ -1,134 +0,0 @@ - - - - 4.0.0 - - org.apache.nifi - monitor-threshold-bundle - 0.0.1-incubating-SNAPSHOT - - monitor-threshold-ui - war - MonitorThreshold-UI - - - - - src/main/resources - - - src/main/xsd - - - - - org.apache.maven.plugins - maven-war-plugin - - false - - - - org.codehaus.mojo - jaxb2-maven-plugin - - - xjc - - xjc - - - org.apache.nifi.settings.generated - - - - - ${project.build.directory}/generated-sources/jaxb - - - - - - - - javax.servlet - javax.servlet-api - provided - - - javax.servlet.jsp - javax.servlet.jsp-api - provided - - - com.sun.jersey - jersey-client - provided - - - com.sun.jersey - jersey-server - - - com.sun.jersey - jersey-core - - - com.sun.jersey - jersey-json - - - com.sun.jersey - jersey-servlet - - - javax.servlet.jsp.jstl - javax.servlet.jsp.jstl-api - provided - - - javax.el - javax.el-api - provided - - - junit - junit - test - - - org.apache.nifi - nifi-api - - - org.apache.commons - commons-lang3 - - - org.apache.nifi - custom-ui-utilities - - - org.apache.nifi - nifi-utils - - - org.apache.nifi - nifi-processor-utils - provided - - - diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/AttributeComparator.java b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/AttributeComparator.java deleted file mode 100644 index 94ddd141a4..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/AttributeComparator.java +++ /dev/null @@ -1,36 +0,0 @@ -/* - * 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.monitor.thresholds.ui; - -import java.util.Comparator; - -import org.apache.nifi.settings.generated.Attribute; - -public class AttributeComparator implements Comparator { - - private final String column; - - public AttributeComparator(String col) { - column = col; - } - - @Override - public int compare(Attribute attr1, Attribute attr2) { - return attr1.getAttributeName().compareTo(attr2.getAttributeName()); - - } -} diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/AttributeResource.java b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/AttributeResource.java deleted file mode 100644 index 838d260616..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/AttributeResource.java +++ /dev/null @@ -1,242 +0,0 @@ -/* - * 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.monitor.thresholds.ui; -/* - * NOTE: rule is synonymous with threshold - */ - -import java.util.UUID; -import javax.net.ssl.SSLEngineResult.Status; -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.Consumes; -import javax.ws.rs.DefaultValue; -import javax.ws.rs.FormParam; -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.Context; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; -import org.apache.commons.lang3.StringUtils; -import org.apache.nifi.settings.generated.ObjectFactory; -import org.apache.nifi.settings.generated.Rule; -import org.apache.nifi.settings.generated.Attribute; - -/** - * MonitorThreshold REST Web Service (for handling changes to attributes made by - * the user in the advanced ui) - * - */ -@Path("/settings/processor/{procid}") -public class AttributeResource extends ThresholdSettingsResource { - - @Context - private HttpServletRequest request; - - @Context - private ServletContext servletContext; - - public AttributeResource() { - super(); - //logger.debug("Invoking AttributeResource.java AttributeResource() constructor."); - } - - /** - * Returns a list of all attributes - * - * @param processorid - * @param sortcolumn - * @param sord - * @param attributefilter - * @param rowNum - * @param pageCommand - * @return - */ - @GET - @Path("/attributes") - @Consumes(MediaType.APPLICATION_FORM_URLENCODED) - @Produces(MediaType.APPLICATION_XML) - public Response getAllAttributes(@PathParam(PROCID) String processorid, - @QueryParam("sidx") @DefaultValue(ATTRIBUTENAME) String sortcolumn, - @QueryParam("sord") @DefaultValue("asc") String sord, - @QueryParam("attributefilter") @DefaultValue("") String attributefilter, - @QueryParam("rownum") @DefaultValue("-1") String rowNum, - @QueryParam("pagecom") @DefaultValue("") String pageCommand) { - - //logger.debug("Invoking AttributeResource.java @GET @PATH(\"/attributes\"): getAllAttributes(...)"); - Integer rownum = Integer.parseInt(rowNum); - - return generateOkResponse(getConfigFile(request, servletContext).getConfigAttributes(sortcolumn, getIsAsc(sord), attributefilter, rownum, pageCommand)).build(); - } - - @GET - @Path("/attributeInfo") - @Produces(MediaType.WILDCARD) - public Response getAllAttributes(@PathParam(PROCID) String processorid) { - - //logger.debug("Invoking AttributeResource.java @GET @PATH(\"/attributeInfo\"): getAllAttributes(...)"); - return generateOkResponse(getConfigFile(request, servletContext).getListStats()).build(); - - } - - /** - * Inserts/adds a new attribute. - * - * @param processorid - * @param attributeName - * @param size - * @param count - * @return - */ - @PUT - @Consumes(MediaType.APPLICATION_FORM_URLENCODED) - @Produces(MediaType.APPLICATION_XML) - @Path("/attribute") - public Response createAttribute(@PathParam(PROCID) String processorid, - @FormParam(ATTRIBUTENAME) @DefaultValue(StringUtils.EMPTY) String attributeName, - @FormParam(SIZE) @DefaultValue(StringUtils.EMPTY) String size, - @FormParam(COUNT) @DefaultValue(StringUtils.EMPTY) String count) { - - //logger.debug("Invoking AttributeResource.java @PUT @PATH(\"/attribute\"): createAttribute(" + attributeName + ", " + size + ", " + count + ")"); - try { - if (attributeName.isEmpty()) { - validation_error_list.add(INVALID_ATTRIBUTE_NAME); - } - if (!validateStringAsLong(size)) { - validation_error_list.add(INVALID_SIZE); - } - if (!validateStringAsInt(count)) { - validation_error_list.add(INVALID_COUNT); - } - ThresholdsConfigFile thresholds = getConfigFile(request, servletContext); - Attribute tg = thresholds.findAttributebyAttributeName(attributeName); - if (tg != null) { - validation_error_list.add(DUPLICATE_ATTRIBUTE_NAME + " " + attributeName); - } - - if (!validation_error_list.isEmpty()) { - return Response.status(400).entity(setValidationErrorMessage(validation_error_list)).build(); - } - - ObjectFactory of = new ObjectFactory(); - //create new attribute - Attribute attr = of.createAttribute(); - attr.setAttributeName(attributeName); - attr.setId(UUID.randomUUID().toString()); - - //create default rule and add to attribute rules - Rule rule = of.createRule(); - rule.setValue("Default"); - rule.setCount(getBigIntValueOf(count)); - rule.setSize(getBigIntValueOf(size)); - attr.setNoMatchRule(rule); - - thresholds.getFlowFileAttributes().add(attr); - - //Save values to config file - thresholds.save(); - } catch (Exception ex) { - logger.error(ex.getMessage()); - return Response.status(400).entity(GENERAL_ERROR + ex.getMessage()).build(); - } - - return generateOkResponse(Status.OK.toString()).build(); - } - - /** - * Updates an attribute. - * - * @param processorid - * @param uuid - * @param attributeName - * @return - */ - @POST - @Consumes(MediaType.APPLICATION_FORM_URLENCODED) - @Produces(MediaType.APPLICATION_XML) - @Path("/attribute") - public Response updateAttribute(@PathParam(PROCID) String processorid, - @FormParam(ATTRIBUTE_UUID) String uuid, - @FormParam(ATTRIBUTENAME) @DefaultValue(StringUtils.EMPTY) String attributeName) { - - //logger.debug("Invoking AttributeResource.java @POST @PATH(\"/attribute\"): updateAttribute(" + attributeName + ")"); - try { - if (attributeName.isEmpty()) { - validation_error_list.add(INVALID_ATTRIBUTE_NAME); - } - ThresholdsConfigFile config = getConfigFile(request, servletContext); - Attribute tg = config.findAttributebyAttributeName(attributeName); - if (tg != null) { - if (tg.getId().compareTo(uuid) != 0) { - validation_error_list.add(DUPLICATE_ATTRIBUTE_NAME + " " + attributeName); - } - } - if (!validation_error_list.isEmpty()) { - return Response.status(400).entity(setValidationErrorMessage(validation_error_list)).build(); - } - - Attribute attr = config.findAttribute(uuid); - attr.setAttributeName(attributeName); - - //Save values to config file - config.save(); - } catch (Exception ex) { - logger.error(ex.getMessage()); - return Response.status(400).entity(GENERAL_ERROR + ex.getMessage()).build(); - } - return generateOkResponse(Status.OK.toString()).build(); - } - - /** - * Deletes an attribute. - * - * @param processorid - * @param uuid - * @return - */ - @DELETE - @Consumes(MediaType.APPLICATION_FORM_URLENCODED) - @Produces(MediaType.APPLICATION_XML) - @Path("/attribute") - public Response deleteAttribute(@PathParam(PROCID) String processorid, - @FormParam(ID) String uuid) { - - //logger.debug("Invoking AttributeResource.java @DELETE @PATH(\"/attribute\"): deleteAttribute(...)"); - try { - ThresholdsConfigFile config = getConfigFile(request, servletContext); - - Attribute attr = config.findAttribute(uuid); - if (attr != null) { - config.getFlowFileAttributes().remove(attr); - - //Save values to config file - config.save(); - } - } catch (Exception ex) { - logger.error(ex.getMessage()); - return Response.status(400).entity(GENERAL_ERROR + ex.getMessage()).build(); - } - return generateOkResponse(Status.OK.toString()).build(); - } - -} diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/RuleComparator.java b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/RuleComparator.java deleted file mode 100644 index 130d1351d1..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/RuleComparator.java +++ /dev/null @@ -1,46 +0,0 @@ -/* - * 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.monitor.thresholds.ui; -/* - * NOTE: rule is synonymous with threshold - */ - -import java.util.Comparator; -import org.apache.nifi.settings.generated.Thresholds; - -public class RuleComparator implements Comparator { - - private final String column; - - public RuleComparator(String col) { - column = col; - } - - @Override - public int compare(Thresholds rule1, Thresholds rule2) { - if (column.compareTo("attributevalue") == 0) { - return rule1.getId().compareTo(rule2.getId()); - } - - if (column.compareTo("size") == 0) { - return rule1.getSize().compareTo(rule2.getSize()); - } else { - return rule1.getCount().compareTo(rule2.getCount()); - } - - } -} diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/ThresholdResource.java b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/ThresholdResource.java deleted file mode 100644 index 9afe324e84..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/ThresholdResource.java +++ /dev/null @@ -1,227 +0,0 @@ -/* - * 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.monitor.thresholds.ui; -/* - * NOTE: rule is synonymous with threshold - */ - -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.Consumes; -import javax.ws.rs.DELETE; -import javax.ws.rs.DefaultValue; -import javax.ws.rs.FormParam; -import javax.ws.rs.GET; -import javax.ws.rs.POST; -import javax.ws.rs.PUT; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; -import javax.ws.rs.core.Context; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.Response.Status; -import org.apache.commons.lang3.StringUtils; -import org.apache.nifi.settings.generated.Thresholds; -import org.apache.nifi.settings.generated.Attribute; -import org.apache.nifi.settings.generated.ObjectFactory; -import org.apache.nifi.settings.generated.Rule; - -/** - * MonitorThreshold REST Web Service (for handling changes to thresholds made by - * the user in the Advanced UI) - * - */ -@Path("/settings/processor/{procid}/attribute/{attributeuuid}") -public class ThresholdResource extends ThresholdSettingsResource { - - @Context - private HttpServletRequest request; - - @Context - private ServletContext servletContext; - - public ThresholdResource() { - super(); - } - - @GET - @Path("/rules") - @Consumes(MediaType.APPLICATION_FORM_URLENCODED) - @Produces(MediaType.APPLICATION_XML) - public Response getSubSettings( - @PathParam(PROCID) String processorid, - @PathParam(ATTRIBUTE_UUID) String attributeid, - @QueryParam("sidx") @DefaultValue(ID) String sortcolumn, - @QueryParam("sord") @DefaultValue("asc") String sord, - @QueryParam("attributevaluefilter") @DefaultValue("") String attributevaluefilter, - @QueryParam("sizefilter") @DefaultValue("") String sizefilter, - @QueryParam("filecountfilter") @DefaultValue("") String filecountfilter) { - - //logger.debug("Invoking ThresholdResource.java @GET @PATH(\"/rules\"): getSubSettings(...)"); - String result = getConfigFile(request, servletContext).getRules(attributeid, sortcolumn, getIsAsc(sord), attributevaluefilter, sizefilter, filecountfilter); - return generateOkResponse(result).build(); - } - - /** - * Inserts/adds a new threshold. - * - * @param processorid - * @param attributeid - * @param value - * @param size - * @param count - * @return - */ - @PUT - @Consumes(MediaType.APPLICATION_FORM_URLENCODED) - @Produces(MediaType.APPLICATION_XML) - @Path("/rule") - public Response ruleInsert( - @PathParam(PROCID) String processorid, - @PathParam(ATTRIBUTE_UUID) String attributeid, - @FormParam(RULEVALUE) @DefaultValue(StringUtils.EMPTY) String value, - @FormParam(SIZE) @DefaultValue(StringUtils.EMPTY) String size, - @FormParam(COUNT) @DefaultValue(StringUtils.EMPTY) String count) { - - //logger.debug("Invoking ThresholdResource.java @PUT @PATH(\"/rule\"): ruleInsert(...). RULEVALUE is: " + value); - try { - ThresholdsConfigFile config = getConfigFile(request, servletContext); - if (value.isEmpty()) { - validation_error_list.add(INVALID_RULE_ID); - } - if (!validateStringAsLong(size)) { - validation_error_list.add(INVALID_SIZE); - } - if (!validateStringAsInt(count)) { - validation_error_list.add(INVALID_COUNT); - } - if (config.containsRule(attributeid, value)) { - validation_error_list.add(String.format(DUPLICATE_VALUE + "%s", value)); - } - if (!validation_error_list.isEmpty()) { - return Response.status(400).entity(setValidationErrorMessage(validation_error_list)).build(); - } - - ObjectFactory of = new ObjectFactory(); - //create new attribute - Thresholds rule = of.createThresholds(); - rule.setId(value); - rule.setSize(getBigIntValueOf(size)); - rule.setCount(getBigIntValueOf(count)); - - Attribute attr = config.findAttribute(attributeid); - attr.getRule().add(rule); - - config.save(); - } catch (Exception ex) { - logger.error(ex.getMessage()); - return Response.status(400).entity(GENERAL_ERROR + ex.getMessage()).build(); - } - return generateOkResponse(Status.OK.toString()).build(); - } - - /** - * Updates a threshold value, size or count. - * - * @param processorid - * @param uuid - * @param rulevalue - * @param size - * @param count - * @return - */ - @POST - @Consumes(MediaType.APPLICATION_FORM_URLENCODED) - @Produces(MediaType.APPLICATION_XML) - @Path("/rule/{" + RULEVALUE + "}") - public Response ruleUpdate(@PathParam(PROCID) String processorid, - @PathParam(ATTRIBUTE_UUID) String uuid, - // @PathParam(RULEUUID) String ruleuuid, - @PathParam(RULEVALUE) String rulevalue, - // @FormParam(RULEVALUE) @DefaultValue(StringUtils.EMPTY) String rulevalue, - @FormParam(SIZE) @DefaultValue(StringUtils.EMPTY) String size, - @FormParam(COUNT) @DefaultValue(StringUtils.EMPTY) String count) { - - //logger.debug("Invoking ThresholdResource.java @POST @PATH(\"/rule/{\"+RULEVALUE+\"}\"): ruleUpdate(...). RULEVALUE is: " + rulevalue); - try { -// if(rulevalue.isEmpty()&& ruleuuid.compareTo("-1")!=0) -// validation_error_list.add(INVALIDRULEID); - if (!validateStringAsLong(size)) { - validation_error_list.add(INVALID_SIZE); - } - if (!validateStringAsInt(count)) { - validation_error_list.add(INVALID_COUNT); - } - if (!validation_error_list.isEmpty()) { - return Response.status(400).entity(setValidationErrorMessage(validation_error_list)).build(); - } - - ThresholdsConfigFile config = getConfigFile(request, servletContext); - Attribute attr = config.findAttribute(uuid); - -// if(ruleuuid.compareTo("-1")==0){ - if (rulevalue.compareToIgnoreCase("default") == 0) { - Rule rule = attr.getNoMatchRule(); - rule.setCount(getBigIntValueOf(count)); - rule.setSize(getBigIntValueOf(size)); - } else { - Thresholds rule = config.findRule(attr, rulevalue);//ruleuuid); -// rule.setValue(rulevalue); - rule.setCount(getBigIntValueOf(count)); - rule.setSize(getBigIntValueOf(size)); - } - - config.save(); - } catch (Exception ex) { - logger.error(ex.getMessage()); - return Response.status(400).entity(GENERAL_ERROR + ex.getMessage()).build(); - } - return generateOkResponse(Status.OK.toString()).build(); - } - - /** - * Deletes a threshold. - * - * @param processorid - * @param uuid - * @param rulevalue - * @return - */ - @DELETE - @Consumes(MediaType.APPLICATION_FORM_URLENCODED) - @Produces(MediaType.APPLICATION_XML) - @Path("/rule/{" + ID + "}") - public Response ruleDelete(@PathParam(PROCID) String processorid, - @PathParam(ATTRIBUTE_UUID) String uuid, - @PathParam(ID) String rulevalue) { - - //logger.debug("Invoking ThresholdResource.java @DELETE @PATH(\"/rule/{\"+ID+\"}\"): ruleDelete(...). RULEVALUE is: " + rulevalue); - try { - ThresholdsConfigFile config = getConfigFile(request, servletContext); - Attribute attr = config.findAttribute(uuid); - Thresholds rule = config.findRule(attr, rulevalue);//ruleuuid); - attr.getRule().remove(rule); - config.save(); - } catch (Exception ex) { - logger.error(ex.getMessage()); - return Response.status(400).entity(GENERAL_ERROR + ex.getMessage()).build(); - } - return generateOkResponse(Status.OK.toString()).build(); - } -} diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/ThresholdSettingsResource.java b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/ThresholdSettingsResource.java deleted file mode 100644 index 2aacf8cd4e..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/ThresholdSettingsResource.java +++ /dev/null @@ -1,191 +0,0 @@ -/* - * 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.monitor.thresholds.ui; -/* - * NOTE: rule is synonymous with threshold - */ - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.core.CacheControl; -import javax.ws.rs.core.Context; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.Response.ResponseBuilder; -import javax.ws.rs.core.UriInfo; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.apache.nifi.web.NiFiWebContext; - -/** - * MonitorThreshold REST Web Service (superclass) - */ -public class ThresholdSettingsResource { - - @Context - protected UriInfo context; - - protected static final Logger logger = LoggerFactory.getLogger(ThresholdSettingsResource.class); - protected List validation_error_list = new ArrayList<>(); - - protected static final String DUPLICATE_ATTRIBUTE_NAME = "Please enter a unique Attribute Name. An attribute with this name already exists: "; - protected static final String INVALID_ATTRIBUTE_NAME = "Attribute Name must contain a value."; - protected static final String INVALID_RULE_ID = "Please enter a value."; - protected static final String INVALID_SIZE = "Please enter an integer Size value in bytes. Punctuation (including decimals/commas) and other forms of text are not allowed. Max allowed size is 9223372036854775807."; - protected static final String INVALID_COUNT = "Please enter an integer File Count. Punctuation (including decimals/commas) and other forms of text are not allowed. Max allowed size is 2147483647."; - protected static final String GENERAL_ERROR = "A general error has occurred. Detailed Error Message: "; - protected static final String DUPLICATE_VALUE = "Please enter a unique value. A threshold with this value already exists: "; - - protected static final String PROCID = "procid"; - protected static final String ID = "id"; - - protected static final String ATTRIBUTE_UUID = "attributeuuid";//uuid of the attribute selected - protected static final String ATTRIBUTENAME = "attributename";//name of the attribute selected - protected static final String RULEUUID = "ruuid"; - protected static final String RULEVALUE = "attributevalue"; - protected static final String SIZE = "size";//rule/threshold size - protected static final String COUNT = "count";//rule/threshold count - - /** - * Creates a new instance of ThresholdSettingsResource - */ - public ThresholdSettingsResource() { - } - - /** - * - * @param response - * @return - */ - protected ResponseBuilder noCache(ResponseBuilder response) { - CacheControl cacheControl = new CacheControl(); - cacheControl.setPrivate(true); - cacheControl.setNoCache(true); - cacheControl.setNoStore(true); - return response.cacheControl(cacheControl); - } - - /** - * Returns a standard web response with a status 200. - * - * @param value - * @return - */ - protected ResponseBuilder generateOkResponse(String value) { - ResponseBuilder response = Response.ok(value); - return noCache(response); - } - - /** - * Validates a number. If the string value cannot be parsed as a long then - * false is returned. - * - * @param value - * @return - */ - protected boolean validateStringAsLong(String value) { - try { - Long.parseLong(value); - } catch (NumberFormatException ex) { - logger.error(ex.getMessage()); - return false; - } - return true; - } - - /** - * Validates a number. If the string value cannot be parsed as an int then - * false is returned. - * - * @param value - * @return - */ - protected boolean validateStringAsInt(String value) { - try { - Integer.parseInt(value); - } catch (NumberFormatException ex) { - logger.error(ex.getMessage()); - return false; - } - return true; - } - - /** - * Validates a number. If the string value cannot be parsed as a float then - * false is returned. - * - * @param value - * @return - */ - protected boolean validateStringAsFloat(String value) { - try { - Float.parseFloat(value); - } catch (NumberFormatException ex) { - logger.error(ex.getMessage()); - return false; - } - return true; - } - - protected ThresholdsConfigFile getConfigFile(HttpServletRequest request, ServletContext servletContext) { - //logger.debug("Running ThresholdSettingsResource: getConfigFile(...)."); - NiFiWebContext nifiContext = (NiFiWebContext) servletContext.getAttribute("nifi-web-context"); - ThresholdsConfigFile file = new ThresholdsConfigFile(nifiContext, request); - return file; - } - - protected Boolean getIsAsc(String sord) { - Boolean isAsc = true; - if (sord.compareTo("desc") == 0) { - isAsc = false; - } - return isAsc; - } - - protected BigInteger getBigIntValueOf(String value) { - Long _value = Long.valueOf(value); - return BigInteger.valueOf(_value); - } - - protected String setValidationErrorMessage(List messages) { - String result = new String(); - for (String message : messages) { - result += "
"; - result += message; - result += "
"; - } - return result; - } - - @SuppressWarnings("unused") - private Map getQueryStringValues(String querystring) { - Map queryvalues = new HashMap(); - - String[] splitvals = querystring.split("&"); - - queryvalues.put("processorid", splitvals[0]); - queryvalues.put(splitvals[1].split("=")[0], splitvals[1].split("=")[1]); - queryvalues.put(splitvals[2].split("=")[0], splitvals[2].split("=")[1]); - - return queryvalues; - } - -} diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/ThresholdsConfigFile.java b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/ThresholdsConfigFile.java deleted file mode 100644 index b108e23743..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/java/org/apache/nifi/monitor/thresholds/ui/ThresholdsConfigFile.java +++ /dev/null @@ -1,296 +0,0 @@ -/* - * 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.monitor.thresholds.ui; -/* - * NOTE: rule is synonymous with threshold - */ - -import java.io.StringReader; -import java.io.StringWriter; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import java.util.UUID; -import javax.servlet.http.HttpServletRequest; -import javax.xml.XMLConstants; -import javax.xml.bind.JAXBContext; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.JAXBException; -import javax.xml.bind.Marshaller; -import javax.xml.bind.Unmarshaller; -import javax.xml.transform.stream.StreamSource; -import javax.xml.validation.Schema; -import javax.xml.validation.SchemaFactory; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.apache.nifi.settings.generated.Thresholds; -import org.apache.nifi.settings.generated.Attribute; -import org.apache.nifi.settings.generated.Configuration; -import org.apache.nifi.settings.generated.ObjectFactory; -import org.apache.nifi.web.HttpServletRequestContextConfig; -import org.apache.nifi.web.NiFiWebContext; - -public class ThresholdsConfigFile { - - protected final Logger logger = LoggerFactory.getLogger(ThresholdsConfigFile.class); - private final String THRESHOLD_SETTINGS_XSD = "/threshold_settings.xsd"; - private final String JAXB_GENERATED_PATH = "org.apache.nifi.settings.generated"; - private final JAXBContext JAXB_CONTEXT = initializeJaxbContext(); - private Configuration configuration; - private ObjectFactory objectFactory; - private final List filtered_attribute_list = new ArrayList<>(); - private final NiFiWebContext nifiWebCtx; - private final HttpServletRequestContextConfig contextConfig; - private final HttpServletRequest request; - - /** - * Load the JAXBContext. - */ - private JAXBContext initializeJaxbContext() { - try { - return JAXBContext.newInstance(JAXB_GENERATED_PATH); - } catch (JAXBException e) { - logger.error("Unable to create JAXBContext."); - throw new RuntimeException("Unable to create JAXBContext."); - } - } - - public ThresholdsConfigFile(final NiFiWebContext ctx, final HttpServletRequest request) { - - //logger.debug("Running ThresholdsConfigFile(...) constructor."); - nifiWebCtx = ctx; - this.request = request; - contextConfig = new HttpServletRequestContextConfig(request); - getState(); - } - - private void getState() { - objectFactory = new ObjectFactory(); - String state = nifiWebCtx.getProcessor(contextConfig).getAnnotationData(); - if (state != null && !state.isEmpty()) { - try { - //logger.debug("Running ThresholdsConfigFile.getState(). Getting (and unmarshalling) Annotation Data."); - // find the schema - SchemaFactory schemaFactory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI); - Schema schema = schemaFactory.newSchema(ThresholdsConfigFile.class.getResource(THRESHOLD_SETTINGS_XSD)); - - // attempt to unmarshal - Unmarshaller unmarshaller = JAXB_CONTEXT.createUnmarshaller(); - unmarshaller.setSchema(schema); - JAXBElement element = unmarshaller.unmarshal(new StreamSource(new StringReader(state)), Configuration.class); - configuration = element.getValue(); - } catch (Exception ex) { - logger.error(ex.getMessage()); - } - } else { - try { - configuration = objectFactory.createConfiguration(); - save(); - } catch (Exception ex) { - logger.error(ex.getMessage()); - } - } - } - - public List getFlowFileAttributes() { - return configuration.getFlowFileAttribute(); - } - - /** - * Helper method to determine if an attribute is already in the attributes - * ArrayList. - * - * @param id - * @return - */ - public boolean containsAttribute(String id) { - boolean result = false; - for (Attribute attr : configuration.getFlowFileAttribute()) { - if (attr.getId().compareTo(id) == 0) { - result = true; - break; - } - } - return result; - } - - public boolean containsRule(String id, String value) { - boolean result = false; - Attribute attr = findAttribute(id); - if (attr != null) { - Thresholds rule = findRule(attr, value); - if (rule != null) { - result = true; - } - - } - return result; - } - - /** - * Iterates through attributes list and returns the attribute that contains - * the id passed into the method. Returns null if attribute is not found in - * attribute list. - * @param id - * @return - */ - public Attribute findAttribute(String id) { - - for (Attribute attr : configuration.getFlowFileAttribute()) { - if (attr.getId().compareTo(id) == 0) { - return attr; - } - } - return null; - } - - public Attribute findAttributebyAttributeName(String attributeName) { - - for (Attribute attr : configuration.getFlowFileAttribute()) { - if (attr.getAttributeName().compareTo(attributeName) == 0) { - return attr; - } - } - return null; - } - - public Thresholds findRule(Attribute attr, String value) { - for (Thresholds rule : attr.getRule()) { - if (rule.getId().compareTo(value) == 0) { - return rule; - } - } - - return null; - } - - /** - * returns xml without attributes, used for presentation. - * - * @param col - * @param isAsc - * @param attributeFilter - * @param rowNum - * @param pageCom - * @return - */ - public String getConfigAttributes(String col, Boolean isAsc, String attributeFilter, Integer rowNum, String pageCom) { - return getFormattedAttributes(configuration.getFlowFileAttribute(), col, isAsc, attributeFilter, "", "", "");//,rowNum,pageCom); - } - - /** - * UI Specific. Returns xml only related to the attributeid passed into the - * method. - * @param attrid - * @param col - * @param isAsc - * @param attributevalueFilter - * @param sizeFilter - * @param filecountfilter - * @return - */ - public String getRules(String attrid, String col, Boolean isAsc, String attributevalueFilter, String sizeFilter, String filecountfilter) { - List attributeList = new ArrayList<>(); - Attribute attr = findAttribute(attrid); - if (attr != null) { - attributeList.add(attr); - } - - Collections.sort(attributeList.get(0).getRule(), new RuleComparator(col)); - - if (!isAsc) { - Collections.reverse(attributeList.get(0).getRule()); - } - - return getFormattedAttributes(attributeList, col, isAsc, "", attributevalueFilter, sizeFilter, filecountfilter);//,-1,""); - } - - public String getListStats()//Integer rowNum) - { - return String.format("Results %s", filtered_attribute_list.size()); - } - - private String getFormattedAttributes(List list, String col, Boolean isAsc, String attributeFilter, String attributevalueFilter, - String sizeFilter, String filecountfilter)//, Integer rowNum, String pageCom) - { - String result = ""; - - getFilteredList(list, attributeFilter); - - for (Attribute attribute : getSortedPagedList(col, isAsc)) { - result += ""; - result += String.format("%s", attribute.getId()); - result += String.format("%s", attribute.getAttributeName()); - result += ""; - result += ""; - result += String.format("%s", UUID.randomUUID()); - result += String.format("Default"); - result += String.format("%s", attribute.getNoMatchRule().getSize()); - result += String.format("%s", attribute.getNoMatchRule().getCount()); - result += ""; - for (Thresholds rule : attribute.getRule()) { - if (rule.getId().toLowerCase().contains(attributevalueFilter.toLowerCase()) - && rule.getSize().toString().contains(sizeFilter) - && rule.getCount().toString().contains(filecountfilter)) { - result += ""; - result += String.format("%s", UUID.randomUUID()); - result += String.format("%s", rule.getId()); - result += String.format("%s", rule.getSize()); - result += String.format("%s", rule.getCount()); - result += ""; - } - } - result += ""; - } - - result += ""; - return result; - - } - - private void sortList(List list, String col, boolean isAsc) { - Collections.sort(list, new AttributeComparator(col)); - - if (!isAsc) { - Collections.reverse(list); - } - } - - private void getFilteredList(List list, String attributeFilter) { - filtered_attribute_list.clear(); - for (Attribute attribute : list) { - if (attribute.getAttributeName().toLowerCase().contains(attributeFilter.toLowerCase())) { - filtered_attribute_list.add(attribute); - } - } - } - - private List getSortedPagedList(String col, boolean isAsc) { - sortList(filtered_attribute_list, col, isAsc);//sub, col, isAsc); - return filtered_attribute_list;// sub; - } - - public void save() throws Exception { - final StringWriter strWriter = new StringWriter(); - Marshaller marshaller = JAXB_CONTEXT.createMarshaller(); - marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); - marshaller.setProperty(Marshaller.JAXB_FRAGMENT, true); - marshaller.marshal(configuration, strWriter); - // save thresholds (in the framework/flow.xml) for MonitorThreshold processor to read and use. - nifiWebCtx.setProcessorAnnotationData(contextConfig, strWriter.toString()); - } -} diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/META-INF/nifi-processor b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/META-INF/nifi-processor deleted file mode 100755 index 2c0091a3f7..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/META-INF/nifi-processor +++ /dev/null @@ -1,15 +0,0 @@ -# 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. -org.apache.nifi.processors.monitor.MonitorThreshold diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/attribute-add-dialog.jsp b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/attribute-add-dialog.jsp deleted file mode 100644 index afa760ca53..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/attribute-add-dialog.jsp +++ /dev/null @@ -1,43 +0,0 @@ -<%-- - 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. ---%> -
-
-
-
-
Attribute Name
-
- -
-
-
Enter default thresholds (required):
-
-
Default Size Threshold (bytes)
-
- -
-
-
-
Default File Threshold
-
- -
-
- -
- -
- diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/attribute-confirm-dialog.jsp b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/attribute-confirm-dialog.jsp deleted file mode 100644 index 78068f679b..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/attribute-confirm-dialog.jsp +++ /dev/null @@ -1,21 +0,0 @@ -<%-- - 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. ---%> -
-
-
-
-
\ No newline at end of file diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/attribute-edit-dialog.jsp b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/attribute-edit-dialog.jsp deleted file mode 100644 index 03a21e2a2e..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/attribute-edit-dialog.jsp +++ /dev/null @@ -1,27 +0,0 @@ -<%-- - 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. ---%> -
-
-
-
-
Attribute Name
-
- -
-
-
-
\ No newline at end of file diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/attribute-filter-dialog.jsp b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/attribute-filter-dialog.jsp deleted file mode 100644 index b5b1232b5c..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/attribute-filter-dialog.jsp +++ /dev/null @@ -1,26 +0,0 @@ -<%-- - 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. ---%> -
-
-
-
Filter Attribute Name
-
- -
-
-
-
\ No newline at end of file diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/error-dialog.jsp b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/error-dialog.jsp deleted file mode 100644 index c46b115bb3..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/error-dialog.jsp +++ /dev/null @@ -1,21 +0,0 @@ -<%-- - 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. ---%> -
-
-
-
-
\ No newline at end of file diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/index.jsp b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/index.jsp deleted file mode 100644 index e39ccc3bf0..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/index.jsp +++ /dev/null @@ -1,101 +0,0 @@ -<%-- - 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. ---%> -<%@page contentType="text/html" pageEncoding="UTF-8"%> - - - - Threshold Settings - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Threshold Settings
- -
-
-
-
Attributes
- Separator - -
-
-
-
- - - - -
Names
-
-
-
-
- -
-
-
- -
-
- -
-
Add Attribute
-
Edit Attribute
-
Delete Attribute
-
Filter Attributes
-
- -
-
Add Threshold
-
Edit Threshold
-
Delete Threshold
-
Filter Thresholds
-
- - - diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-add-dialog.jsp b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-add-dialog.jsp deleted file mode 100644 index 65d059dc9f..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-add-dialog.jsp +++ /dev/null @@ -1,45 +0,0 @@ -<%-- - 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. ---%> -
-
-
- - - -
-
Attribute Value
-
- -
-
-
-
Size Threshold (bytes)
-
- -
-
-
-
File Threshold
-
- -
-
- -
- -
- diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-confirm-dialog.jsp b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-confirm-dialog.jsp deleted file mode 100644 index ae2f2bfd2d..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-confirm-dialog.jsp +++ /dev/null @@ -1,21 +0,0 @@ -<%-- - 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. ---%> -
-
-
-
-
\ No newline at end of file diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-dialog.jsp b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-dialog.jsp deleted file mode 100644 index 93355bb979..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-dialog.jsp +++ /dev/null @@ -1,48 +0,0 @@ -<%-- - 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. ---%> -
-
-
- - -
-
-
- - - - - Separator - - -
-
-
- - - - - - -
-
-
-
-
- -
- diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-edit-dialog.jsp b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-edit-dialog.jsp deleted file mode 100644 index f5d5391743..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-edit-dialog.jsp +++ /dev/null @@ -1,45 +0,0 @@ -<%-- - 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. ---%> -
-
-
- - - -
-
Attribute Value
-
- -
-
-
-
Size Threshold (bytes)
-
- -
-
-
-
File Threshold
-
- -
-
- -
- -
- diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-filter-dialog.jsp b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-filter-dialog.jsp deleted file mode 100644 index 6a33bed3bd..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/jsp/threshold-filter-dialog.jsp +++ /dev/null @@ -1,40 +0,0 @@ -<%-- - 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. ---%> -
-
-
-
Filter Attribute Value
-
- -
-
-
-
Filter Size
-
- -
-
-
-
Filter File Count
-
- -
-
-
- -
- diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/web.xml b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 07d184f8f8..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,48 +0,0 @@ - - - - advanced-threshold-settings - - resources - com.sun.jersey.spi.container.servlet.ServletContainer - - - com.sun.jersey.config.property.packages - org.apache.nifi.monitor.thresholds.ui;org.apache.nifi.settings.generated - - - com.sun.jersey.api.json.POJOMappingFeature - true - - - - resources - /resources/* - - - - index - /WEB-INF/jsp/index.jsp - - - index - /index - - - - index - - diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/css/threshold_styles.css b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/css/threshold_styles.css deleted file mode 100644 index 57bc71e455..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/css/threshold_styles.css +++ /dev/null @@ -1,422 +0,0 @@ -/* - * 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. - */ -body { - display: block; - font-family: Verdana, Arial, Helvetica, sans-serif; - font-size: 62.5%; -} - - -/*Main dialog styles*/ - -#threshold-header-text{ - display: inline-block; - font-size: 16px; - font-weight: bold; -} - -#attribute-confirm-dialog, #threshold-confirm-dialog { - z-index: 1303; - display: none; - width: 500px; - height: 100px; - border: 1px solid #eee; -} - -#attribute-dialog-content, #threshold-dialog-content{ - font-size: 11px; - height: 40px; - overflow: auto; - position: relative; - top: -25px; - width: 490px; -} - -#error-dialog { - z-index: 1303; - display: none; - width: 500px; - height: 300px; - border: 1px solid #eee; -} - -#error-dialog-content{ - font-size: 12px; - height: 240px; - overflow: auto; - position: relative; - top: -25px; - width: 470px; -} - -#attribute-add-dialog { - z-index: 1300; - display: none; - width: 250px; - height: 365px; - border: 1px solid #eee; -} - -#attribute-edit-dialog { - z-index: 1300; - display: none; - width: 250px; - height: 250px; - border: 1px solid #eee; -} - -#attribute-filter-dialog{ - z-index: 1300; - display: none; - width: 250px; - height: 195px; - border: 1px solid #eee; -} -#threshold-filter-dialog{ - z-index: 1300; - display: none; - width: 250px; - height: 245px; - border: 1px solid #eee; -} - -#threshold-edit-dialog { - z-index: 1300; - display: none; - width: 250px; - height: 360px; - border: 1px solid #eee; -} - - -#threshold-add-dialog { - z-index: 1301; - display: none; - width: 250px; - height: 260px; - border: 1px solid #eee; -} - -#threshold-dialog{ - z-index: 1300; - display: none; - width: 900px; - height: 520px; - border: 1px solid #eee; -} - -/*content container styles*/ - - - - - -#setting-title{ - width:400px; - font-size: 10px; - font-weight: bold; - padding-bottom: 5px; - padding-top: 5px; -} - -.select-link{ - color: #598599; - display: inline; - font-size: 10px; - font-weight: bold; - position: relative; - top: -2px; - -} -.select-link:hover{ - color:silver; - cursor:pointer; -} - -.list_container{ - position: relative; - border-bottom: 1px solid silver; - border-left: 1px solid silver; - border-right: 1px solid silver; - display: block; - overflow: hidden; - top: 0; -} - -.list-header { - border-left: 1px solid silver; - border-right: 1px solid silver; - border-top: 1px solid silver; - display: block; - height: 50px; - margin-top: 10px; - position: relative; -} -.list-header-text { - font-size: 12px; - font-weight: bold; - color:black; - position:relative; - top:-2px; - display: inline; -} - - - -#filter-selection{ - position:relative; - top:10px; -} - -.filter-text{ - font-size:10px; - width:200px; - height:12px; -} -.clear-filter{ - color: #598599; - display: inline; - font-size: 10px; - position: relative; -} -.clear-filter-label{ - position:relative; - display:inline; - font-weight: bold; - top:-4px; -} -.clear-filter-text{ - position:relative; - display:inline; - color:black; - top:-4px; -} -.dialog-list-header { - background-color: white; - border-left: 1px solid silver; - border-right: 1px solid silver; - border-top: 1px solid silver; - display: inline-block; - height: 50px; - position: relative; - width: 100%; -} - -.error-message{ - width:100%; - color: red; - font-size: 10px; - font-weight: bold; - padding-bottom: 10px; -} - -.add-text { - float: right; - margin-right: 5px; - height: 19px; - line-height: 19px; - -} -.control-text { - position:relative; - display:inline-block; - margin-left: 10px; - height: 19px; - line-height: 19px; - top:-5px; - -} -#control-box{ - display:inline-block; - position: relative; - top: 3px; -} - -#cb_list, #cb_rule-list{ - position:relative; - right:5px; -} - -#save-cancel{ - position:relative; - display:inline-block; - padding-left: 5px; -} -.abbreviated-header{ - background-color:#598599; - color:white; - height:15px; - border-right:1px solid white; - padding-top:2px; - padding-left:2px; - margin-top:2px; - cursor:pointer; -} -.rules-abbreviated-header{ - background-color:gray; - color:white; - height:15px; - border-right:1px solid white; - padding-top:2px; - padding-left:2px; - margin-top:2px; - cursor:pointer; -} - -.context-menu{ - display:none; - position:absolute; - z-index: 1305; - border: solid 1px black; - font-size: 10px; - background-color: white; - padding:5px; - width:130px; - color:black; -} - - - -.context-control{ - cursor:pointer; - vertical-align:middle; - display:inline-block; - padding-bottom: 2px; -} - -.context-label{ - position:relative; - width:80px; - left:3px; - top:-2px; - color:black; -} -.context-label:hover{ - color:#598599; -} - -.control-container{ - - cursor:pointer; - -} -/*icon styles*/ -.add-icon-bg { - display:inline-block; - width: 19px; - height: 19px; - cursor: pointer; - background: transparent url(../../nifi-web/images/buttonNewProperty.png) no-repeat scroll top left; -} - -.add-icon-bg:hover { - background: transparent url(../../nifi-web/images/buttonNewProperty.png) no-repeat scroll top right; -} - -.expansion-button { - width: 11px; - height: 11px; - margin-left: 5px; - cursor: pointer; - background: transparent url(../../nifi-web/images/buttonExpandCollapse.png) no-repeat scroll top left; -} - -.checkbox-select{ - position:relative; - padding-left:2px; - padding-right:2px; -} - -.control-style{ - padding-right:5px; - -} - -/*styles for attribute titles displayed in the thresholds dialog*/ -.attribute-title-label { - color: #264C58; - font-size: 12px; - font-weight: bold; - display: inline-block; - padding-right: 5px; - padding-bottom: 10px; - padding-left: 5px; - vertical-align: top; -} -#attribute-info{ - position:relative; - margin-bottom:10px; - -} -.attribute-title-value { - color: black; - width: 240px; - font-size: 12px; - display: inline-block; - vertical-align: top; -} - -/*Autocomplete override styles */ -.ac_results { - padding: 0px; - border: 1px solid black; - background-color: white; - overflow: hidden; - z-index: 99999; - left:370px; -} - -.ac_results ul { - width: 100%; - list-style-position: outside; - list-style: none; - padding: 0; - margin: 0; -} - -.ac_results li { - margin: 0px; - padding: 2px 5px; - cursor: default; - display: block; - /* - if width will be 100% horizontal scrollbar will apear - when scroll mode will be used - */ - /*width: 100%;*/ - font: menu; - font-size: 12px; - /* - it is very important, if line-height not setted or setted - in relative units scroll will be broken in firefox - */ - line-height: 16px; - overflow: hidden; -} - -.ac_loading { - background: white url('indicator.gif') right center no-repeat; -} - -.ac_odd { - background-color: #eee; -} - -.ac_over { - background-color: #0A246A; - color: white; -} diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/addWorksheetRow.png b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/addWorksheetRow.png deleted file mode 100755 index 1aa7f095c6c282262390748ab2e596a3fc15c228..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 323 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE7hmi)!cT|6FkAON{jSt(_u!Lq7!B=^4B;IBq%dL`6}O%gpGjO3}J1 z4Y?KfzQ;%l3Rp(0FF*F|EI&io>j^)N99Xu9ZE@HjcqrgTrepSr)S!;v7$d z7#j|r*sm7k|1`qSzwL6X$#3JGkN$s>{Cx9Ec6v|es;&OpMC)hUh7@^ocW)~11Nx1@ M)78&qol`;+0M{XYA^-pY diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/clear.png b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/clear.png deleted file mode 100755 index 3fd71d6e5929ba0c40db1960e36e9acba9d7e525..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 912 zcmV;B18@9^P)oWowDaEkzU!j%l38$)o7}}cCnx7z zVrKYAWwOsS=-Lqw-t?qu)r6QQ!notg696vQmg&~r9t3cLe1UW(yG7H)Ku^~yeO+g> z(bg0Jm{BNJFfw+(d}sQhCl&9uE%R)8S2n|p?*PPznUTt5*BiPR+1l3~ipPS`iO?Jk zARN#U4H*a;0yD)$9M29{3dM>Y4K?&WE>{g^G!Zl7)jelV^{i|AG#D_%trsJC8h7YDw+>Nu`!(E)&&KfE(t5U!_KF)uRXGsl%@ z#;0eK6ZhtiUhin`+P8I6C=m!d1ufk}o{_gOutKfI-_b^R{JP z`QzJ2^LHMWS&9G(o-t)@yh1Uq9cxfG6X$C)H~ghbOC7?WrZ-yyL0>0QOs`0x)U>uAAQg z>;&LGL0Gpf^PVr@oj>}%1`wDT7wv!4sq=s3q*Oh&WftpMhqGg=O68@F-$%x80Ep=T zKm-sG?*3PXAs8nI|0Dok)RR-0Y?z4d_HJBzCO6*s&6^5?o^0No>h2ra)My_p{u2^&LcltM%9%NL@3OcL;J5G-fbF(raxE|eza?grmD~~+f zaqijGJ5NgIp1Aws^QzS=N=l24UVFWF@7C7#mb`-Oi4*%T-hBA({k!fpmyVvfw0_U& zw&ka*X70Up>*n0`hp#;Ruzma1y%(R|d-neA=O6d(-7BjoIeYir!`EMq9zA;a>Z@zl zuB|)%c-{JSQ?}l2SaAjDhHKaERn=5LPOjP)~xpgH)dBx?p}D_gvZ*9 zgTvBHagDA@ldy%hhP9xXpgymY6DL~}r>dH$lpwFP*&3e)0YeX_eg@HqBLN2%Idus! zi_H;e$vh;$GuNO%fic;IS733E1xJvQY%iy&LV--f<2wqn@_e-y5}z=3vRK6!C6zQB NIXl;Zot25f8UVdI&55AYJFd@iuNCP!?ziT4UB`x`g~#h= z9?OegA(gpRE^moV>SpQw{YkN_1)KMHx9<({YEj&Bb;_Z;D>mF~-g|TLhO2$9^}KQY z2CbW-Q#Z&iJKkQnORHv=y+@t+|Ns9Ph9FS<$->Ca;LM-{ayuwa7})1EFfcf`v^tBh zwmCO-Idj@HxAnC0C~&b&Y@OWBZ*MuHYceORrLurIds7pC(^M@>7D-8Sb4yD#vsI?z z%92th2TY6|#dbC^vk0FuHdb=bGcd4Pr7g)Ts%vB#tr=~l3s#88;1=+ec+$Y2cs DWGS98 diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/firstPageDisabled.gif b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/firstPageDisabled.gif deleted file mode 100755 index 99798d82efdeb4fd5538982e5b7d21396710d10f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 365 zcmZ?wbhEHb6krfwxXQrbU}MqKQWF;8y?xW#C3B}0W+fjvuqQP!;_ky6-d@fdRxPP* zDVW^doERONmX@|_>xSivW(NeimKJ1e+O=ZF#IB~QqT`46he!Hk7shQ`vuxkaEp9Hh zS;;Y{j~`Bni>NBfTC;pXXpr~Ty=%9uUj;NFCMxj2o*gqMb^rhWpMe@c@h1x-JA(#; z4#+T&pBUJ>92gi}brz{fD0{7N(dBbi-rOO;qI2=l7YRm5tH?(sfd;&O(|Q9W1eNr7 zm>Umnh~QB>n=ISJ^P+)~QB<_rNts2osYz6xwVyd#fQMB^MsCKm>0H^Ij3T_MyzDal z)8^zc39-n_$uMtVR+h|m;Z`kP&za4T8!0@mF3~$NRA`G=wCnc6r(8X}92u+uzk+Su diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/lastPage.gif b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/lastPage.gif deleted file mode 100755 index 3642d919151793725d5d0b109908e4c67e554020..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 579 zcmZ?wbhEHb6krfwc*ekBRm{?S$TecV$eQzA8B=ZMpDuH(;yHMGWn`av)9NU{S!_9b z+>cZO~_eou0A3F%UbTFc$M&wKI7`mO^J zOYh{R9}t{=C$wyn?Urj(-0MVwT9ppmS+eYW{q}3K3ioI=oG}fU$DXxYdi~wz#n+0{ z_6Zd4H0azBv*E&|sI45mN21yf`^GJon0Y3xaGiP0;_$3ZYTbu}Yj?Qry}5ABjm9O% zTGDolwI2+~IwBObkRx(|*xGA7hwrS8>D4b>>eRO{-m^};Y`1Cd3DJ&?$#I)`|NsBb zFj#@&PZmaY1|J3;kOM(+!oa?u!KbN-MXb4ldVQ;Dx*QZs|Im5pdy zQ>SQWCmXw)6F*D;L7C3SX3D z)n6jT#pNL3&11{0rYj(I?WTkTkIqX?6Fv89QYtFeTK4wp+OE487B6Ab@{|ixNSK-- g$RH|{)WRToasdn1Gy};!3CuwUom&-LxmXyi0Xm(e#{d8T diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/lastPageDisabled.gif b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/lastPageDisabled.gif deleted file mode 100755 index c0a6b81f544c8e45c88fb0063ca93a80b3edc5a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 368 zcmZ?wbhEHb6krfwxXQrbU}MqKQWG8OzhTvqy*oA+Wv9%XIn&46`R>CTwJil{2~kse zT6Sz+7aHKbV)2}`w6yY~j3Wp3%$nS@Y1fK`sF2l5=Z8gjH&hgC-LN{lFfJg_wKzN5 z&Bb;~PtV%r3wLeZaO}{&tmK&FL)qP)soT#Br$ zDk?&vQ+S!WXU%5S;?|rZD$1-TF`H3NB`hh0L8eAaR3yjKn?XX9n>``$0JA_?!~u<* MGw!YdfsPE;0H;rHsQ>@~ diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/nextPage.gif b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/nextPage.gif deleted file mode 100755 index b59001fa9749279afaede2972f547859437b25fa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 570 zcmZ?wbhEHb6krfwc*ekBRm?K+U`obH?Tshq_|0OgSsZ@!?%IlNwqEs;Q4`dc9BVoE zcz4`p-j+k28B=V#_e4*+9JKmcQ3_eY;Z(zuvtQ=Uv&(r)Y?fXx zo_Qv1=8^o^KK-57=QOX4P1(cWu+OD+XUORX+jR+p3h3_166d6GJ)`({_l@JyGn{qL{r# zfBTg=Ky!MIdWA3N%-JQs>~b~G(!DnqH|_IWf2HUD|Njg_1StMwVPt1;XV3w;7ZfK9 z?9&_Eo0|BTo7+2@801(x`xsOdL?!#$8MxWFINI7Z8Rj#HtH=u3^7S?|7#p*#Wn*Nt zlAkoioxw$!e;2>%UR5_8%{B&kGaDuwc2|3QUL{#|K2ru=mTN2ydOVhn+FDj}m#+Z^oxzAf2c#V2CkD25hnWF8KJxT?C_1=$STW9W zOL=JH~n5hV{PMf0TZO-(=#xB%Bl2J!RghNEJoRODT zOrBquL0n@Zk0BEiM++k>Q{RM%dQ(M3MZ_4RO2t=*EAWYO@G7VTJH^He^l*wxr2EV3 YGAc!fGAM{_3iXoRecZ_PxFdr#04uh51poj5 diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/prevPage.gif b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/prevPage.gif deleted file mode 100755 index 0789f0a4ee20da3625e04f513b190da517d59371..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 567 zcmZ?wbhEHb6krfwc*ekBRm{@0Cn{;Z_@)zcs~3m)&0;%#f8*REW%JinyQ8g!w zr{4-mKPVWtShirT>8kS`?sX!mE7aS!#Vk8tfArqEj48H(^VnyeNt?d6c*DKsn6-Qf zOBC97hb+C5SGvh2^N`@ulTEc-JqwpO%{f}!wkjoKrFQ5N&gExYLOPXFw@RLRu(fHs z|C$?(JFd<4s+UZgX`Hr3Y45$IaeeyjyTao(^X8ot{r~?z!w>YOBjTkCP+z&xiG4( z-_Xk}tZ5-)WMi|IaStzpDTkqiygtt{c_leHGrRrH?7EJQOxjn?)md2$H`yy|Sn)sP z=e~Yx$^>IUX#)c-TU(WnbKF_P1!df{7B5}i!mP*@vtq_`4xtt<7Hz>36E{p!bZKN@ Gum%A5`JFWY diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/prevPageDisabled.gif b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/prevPageDisabled.gif deleted file mode 100755 index 6099b06ba1af9cd479c21ed18d5756f4b3738e71..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 361 zcmZ?wbhEHb6krfwxXQrbU}G`4yE!X4X49?}0fDZyEd^&z99gz-R#b%lzMWeNvy$&V zywTlUJ!4{*n~Uv+RZG&+(vo7rjvUw%7U5l1nBF?hk_>2T=HZac`R z!OY>Lp}dfb#jR~e;*~wC)>gM6d GU=09j_izpX diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/removeWorksheetRow.png b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/removeWorksheetRow.png deleted file mode 100755 index 0e0953c73c60adbbc762d0553f95a586f3054aa6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 655 zcmV;A0&x9_P)Cml&2>S!-Vj|(%DY|xv2rmiUs+--iLl+4{ z?G|A~=Ohg>vv9>N%M}DMW!>HPeV%zbm|I~4O9R8eF!SL%Uk3g&6hQCgwr&w;ys}lf zIX1F%*Xv2Q_jYug8SU>IsAzqBV(1P`&UnCRf8PMZ!;e^5{(|GUxUTch+I8+M7rU?V zW_t34vrC+PH%AZz1VKm`?q)<3MMP26&l(YiA-R=YS&0X*u<(|l`}Zn3VP^W}j)^_# z_6NY#uC7z$Rx^mTh**raXl*fCh+`p13_7uhfHnqW4A$CV1<;djx7Tl^S>Kr5@mDOH z8zq#g#&c^~-&kgAv%q#=W$W-maC!CHfe5XaxietSj|8I1&`<#3&|j$e*lNa`-i+0@!$Xe002ovPDHLkV1g_FA-@0s diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/separator.gif b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/images/separator.gif deleted file mode 100755 index dd02096f1fe51e159f509b3e79269acd186a97ee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63 zcmZ?wbhEHbWMklGXkcUjg8%>jEB+I8E=o--Nlj5G&n(GM2+2rQaQE~LV9;R#DqsRC PWnf}$>0g=6%3uuuGZhd& diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/js/jquery/jqgrid/css/ui.jqgrid.css b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/js/jquery/jqgrid/css/ui.jqgrid.css deleted file mode 100644 index 11594b11f5..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/js/jquery/jqgrid/css/ui.jqgrid.css +++ /dev/null @@ -1,171 +0,0 @@ -/*Grid*/ -.ui-jqgrid {position: relative;} -.ui-jqgrid .ui-jqgrid-view {position: relative;left:0; top: 0; padding: 0; font-size:11px;} -/* caption*/ -.ui-jqgrid .ui-jqgrid-titlebar {padding: .3em .2em .2em .3em; position: relative; font-size: 12px; border-left: 0 none;border-right: 0 none; border-top: 0 none;} -.ui-jqgrid .ui-jqgrid-caption {text-align: left;} -.ui-jqgrid .ui-jqgrid-title { margin: .1em 0 .2em; } -.ui-jqgrid .ui-jqgrid-titlebar-close { position: absolute;top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height:18px; cursor:pointer;} -.ui-jqgrid .ui-jqgrid-titlebar-close span { display: block; margin: 1px; } -.ui-jqgrid .ui-jqgrid-titlebar-close:hover { padding: 0; } -/* header*/ -.ui-jqgrid .ui-jqgrid-hdiv {position: relative; margin: 0;padding: 0; overflow-x: hidden; border-left: 0 none !important; border-top : 0 none !important; border-right : 0 none !important;} -.ui-jqgrid .ui-jqgrid-hbox {float: left; padding-right: 20px;} -.ui-jqgrid .ui-jqgrid-htable {table-layout:fixed;margin:0;} -.ui-jqgrid .ui-jqgrid-htable th {height:22px;padding: 0 2px 0 2px;} -.ui-jqgrid .ui-jqgrid-htable th div {overflow: hidden; position:relative; height:17px;} -.ui-th-column, .ui-jqgrid .ui-jqgrid-htable th.ui-th-column {overflow: hidden;white-space: nowrap;text-align:center;border-top : 0 none;border-bottom : 0 none;} -.ui-th-ltr, .ui-jqgrid .ui-jqgrid-htable th.ui-th-ltr {border-left : 0 none;} -.ui-th-rtl, .ui-jqgrid .ui-jqgrid-htable th.ui-th-rtl {border-right : 0 none;} -.ui-first-th-ltr {border-right: 1px solid; } -.ui-first-th-rtl {border-left: 1px solid; } -.ui-jqgrid .ui-th-div-ie {white-space: nowrap; zoom :1; height:17px;} -.ui-jqgrid .ui-jqgrid-resize {height:20px !important;position: relative; cursor :e-resize;display: inline;overflow: hidden;} -.ui-jqgrid .ui-grid-ico-sort {overflow:hidden;position:absolute;display:inline; cursor: pointer !important;} -.ui-jqgrid .ui-icon-asc {margin-top:-3px; height:12px;} -.ui-jqgrid .ui-icon-desc {margin-top:3px;height:12px;} -.ui-jqgrid .ui-i-asc {margin-top:0;height:16px;} -.ui-jqgrid .ui-i-desc {margin-top:0;margin-left:13px;height:16px;} -.ui-jqgrid .ui-jqgrid-sortable {cursor:pointer;} -.ui-jqgrid tr.ui-search-toolbar th { border-top-width: 1px !important; border-top-color: inherit !important; border-top-style: ridge !important } -tr.ui-search-toolbar input {margin: 1px 0 0 0} -tr.ui-search-toolbar select {margin: 1px 0 0 0} -/* body */ -.ui-jqgrid .ui-jqgrid-bdiv {position: relative; margin: 0; padding:0; overflow: auto; text-align:left;} -.ui-jqgrid .ui-jqgrid-btable {table-layout:fixed; margin:0; outline-style: none; } -.ui-jqgrid tr.jqgrow { outline-style: none; } -.ui-jqgrid tr.jqgroup { outline-style: none; } -.ui-jqgrid tr.jqgrow td {font-weight: normal; overflow: hidden; white-space: pre; height: 22px;padding: 0 2px 0 2px;border-bottom-width: 1px; border-bottom-color: inherit; border-bottom-style: solid;} -.ui-jqgrid tr.jqgfirstrow td {padding: 0 2px 0 2px;border-right-width: 1px; border-right-style: solid;} -.ui-jqgrid tr.jqgroup td {font-weight: normal; overflow: hidden; white-space: pre; height: 22px;padding: 0 2px 0 2px;border-bottom-width: 1px; border-bottom-color: inherit; border-bottom-style: solid;} -.ui-jqgrid tr.jqfoot td {font-weight: bold; overflow: hidden; white-space: pre; height: 22px;padding: 0 2px 0 2px;border-bottom-width: 1px; border-bottom-color: inherit; border-bottom-style: solid;} -.ui-jqgrid tr.ui-row-ltr td {text-align:left;border-right-width: 1px; border-right-color: inherit; border-right-style: solid;} -.ui-jqgrid tr.ui-row-rtl td {text-align:right;border-left-width: 1px; border-left-color: inherit; border-left-style: solid;} -.ui-jqgrid td.jqgrid-rownum { padding: 0 2px 0 2px; margin: 0; border: 0 none;} -.ui-jqgrid .ui-jqgrid-resize-mark { width:2px; left:0; background-color:#777; cursor: e-resize; cursor: col-resize; position:absolute; top:0; height:100px; overflow:hidden; display:none; border:0 none; z-index: 99999;} -/* footer */ -.ui-jqgrid .ui-jqgrid-sdiv {position: relative; margin: 0;padding: 0; overflow: hidden; border-left: 0 none !important; border-top : 0 none !important; border-right : 0 none !important;} -.ui-jqgrid .ui-jqgrid-ftable {table-layout:fixed; margin-bottom:0;} -.ui-jqgrid tr.footrow td {font-weight: bold; overflow: hidden; white-space:nowrap; height: 21px;padding: 0 2px 0 2px;border-top-width: 1px; border-top-color: inherit; border-top-style: solid;} -.ui-jqgrid tr.footrow-ltr td {text-align:left;border-right-width: 1px; border-right-color: inherit; border-right-style: solid;} -.ui-jqgrid tr.footrow-rtl td {text-align:right;border-left-width: 1px; border-left-color: inherit; border-left-style: solid;} -/* Pager*/ -.ui-jqgrid .ui-jqgrid-pager { border-left: 0 none !important;border-right: 0 none !important; border-bottom: 0 none !important; margin: 0 !important; padding: 0 !important; position: relative; height: 25px;white-space: nowrap;overflow: hidden;font-size:11px;} -.ui-jqgrid .ui-pager-control {position: relative;} -.ui-jqgrid .ui-pg-table {position: relative; padding-bottom:2px; width:auto; margin: 0;} -.ui-jqgrid .ui-pg-table td {font-weight:normal; vertical-align:middle; padding:1px;} -.ui-jqgrid .ui-pg-button { height:19px !important;} -.ui-jqgrid .ui-pg-button span { display: block; margin: 1px; float:left;} -.ui-jqgrid .ui-pg-button:hover { padding: 0; } -.ui-jqgrid .ui-state-disabled:hover {padding:1px;} -.ui-jqgrid .ui-pg-input { height:13px;font-size:.8em; margin: 0;} -.ui-jqgrid .ui-pg-selbox {font-size:.8em; line-height:18px; display:block; height:18px; margin: 0;} -.ui-jqgrid .ui-separator {height: 18px; border-left: 1px solid #ccc ; border-right: 1px solid #ccc ; margin: 1px; float: right;} -.ui-jqgrid .ui-paging-info {font-weight: normal;height:19px; margin-top:3px;margin-right:4px;} -.ui-jqgrid .ui-jqgrid-pager .ui-pg-div {padding:1px 0;float:left;position:relative;} -.ui-jqgrid .ui-jqgrid-pager .ui-pg-button { cursor:pointer; } -.ui-jqgrid .ui-jqgrid-pager .ui-pg-div span.ui-icon {float:left;margin:0 2px;} -.ui-jqgrid td input, .ui-jqgrid td select .ui-jqgrid td textarea { margin: 0;} -.ui-jqgrid td textarea {width:auto;height:auto;} -.ui-jqgrid .ui-jqgrid-toppager {border-left: 0 none !important;border-right: 0 none !important; border-top: 0 none !important; margin: 0 !important; padding: 0 !important; position: relative; height: 25px !important;white-space: nowrap;overflow: hidden;} -.ui-jqgrid .ui-jqgrid-toppager .ui-pg-div {padding:1px 0;float:left;position:relative;} -.ui-jqgrid .ui-jqgrid-toppager .ui-pg-button { cursor:pointer; } -.ui-jqgrid .ui-jqgrid-toppager .ui-pg-div span.ui-icon {float:left;margin:0 2px;} -/*subgrid*/ -.ui-jqgrid .ui-jqgrid-btable .ui-sgcollapsed span {display: block;} -.ui-jqgrid .ui-subgrid {margin:0;padding:0; width:100%;} -.ui-jqgrid .ui-subgrid table {table-layout: fixed;} -.ui-jqgrid .ui-subgrid tr.ui-subtblcell td {height:18px;border-right-width: 1px; border-right-color: inherit; border-right-style: solid;border-bottom-width: 1px; border-bottom-color: inherit; border-bottom-style: solid;} -.ui-jqgrid .ui-subgrid td.subgrid-data {border-top: 0 none !important;} -.ui-jqgrid .ui-subgrid td.subgrid-cell {border-width: 0 0 1px 0;} -.ui-jqgrid .ui-th-subgrid {height:20px;} -/* loading */ -.ui-jqgrid .loading {position: absolute; top: 45%;left: 45%;width: auto;z-index:101;padding: 6px; margin: 5px;text-align: center;font-weight: bold;display: none;border-width: 2px !important; font-size:11px;} -.ui-jqgrid .jqgrid-overlay {display:none;z-index:100;} -/* IE * html .jqgrid-overlay {width: expression(this.parentNode.offsetWidth+'px');height: expression(this.parentNode.offsetHeight+'px');} */ -* .jqgrid-overlay iframe {position:absolute;top:0;left:0;z-index:-1;} -/* IE width: expression(this.parentNode.offsetWidth+'px');height: expression(this.parentNode.offsetHeight+'px');}*/ -/* end loading div */ -/* toolbar */ -.ui-jqgrid .ui-userdata {border-left: 0 none; border-right: 0 none; height : 21px;overflow: hidden; } -/*Modal Window */ -.ui-jqdialog { display: none; width: 300px; position: absolute; padding: .2em; font-size:11px; overflow:visible;} -.ui-jqdialog .ui-jqdialog-titlebar { padding: .3em .2em; position: relative; } -.ui-jqdialog .ui-jqdialog-title { margin: .1em 0 .2em; } -.ui-jqdialog .ui-jqdialog-titlebar-close { position: absolute; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; cursor:pointer;} - -.ui-jqdialog .ui-jqdialog-titlebar-close span { display: block; margin: 1px; } -.ui-jqdialog .ui-jqdialog-titlebar-close:hover, .ui-jqdialog .ui-jqdialog-titlebar-close:focus { padding: 0; } -.ui-jqdialog-content, .ui-jqdialog .ui-jqdialog-content { border: 0; padding: .3em .2em; background: none; height:auto;} -.ui-jqdialog .ui-jqconfirm {padding: .4em 1em; border-width:3px;position:absolute;bottom:10px;right:10px;overflow:visible;display:none;height:80px;width:220px;text-align:center;} -.ui-jqdialog>.ui-resizable-se { bottom: -3px; right: -3px} -.ui-jqgrid>.ui-resizable-se { bottom: -3px; right: -3px } -/* end Modal window*/ -/* Form edit */ -.ui-jqdialog-content .FormGrid {margin: 0;} -.ui-jqdialog-content .EditTable { width: 100%; margin-bottom:0;} -.ui-jqdialog-content .DelTable { width: 100%; margin-bottom:0;} -.EditTable td input, .EditTable td select, .EditTable td textarea {margin: 0;} -.EditTable td textarea { width:auto; height:auto;} -.ui-jqdialog-content td.EditButton {text-align: right;border-top: 0 none;border-left: 0 none;border-right: 0 none; padding-bottom:5px; padding-top:5px;} -.ui-jqdialog-content td.navButton {text-align: center; border-left: 0 none;border-top: 0 none;border-right: 0 none; padding-bottom:5px; padding-top:5px;} -.ui-jqdialog-content input.FormElement {padding:.3em} -.ui-jqdialog-content select.FormElement {padding:.3em} -.ui-jqdialog-content .data-line {padding-top:.1em;border: 0 none;} - -.ui-jqdialog-content .CaptionTD {vertical-align: middle;border: 0 none; padding: 2px;white-space: nowrap;} -.ui-jqdialog-content .DataTD {padding: 2px; border: 0 none; vertical-align: top;} -.ui-jqdialog-content .form-view-data {white-space:pre} -.fm-button { display: inline-block; margin:0 4px 0 0; padding: .4em .5em; text-decoration:none !important; cursor:pointer; position: relative; text-align: center; zoom: 1; } -.fm-button-icon-left { padding-left: 1.9em; } -.fm-button-icon-right { padding-right: 1.9em; } -.fm-button-icon-left .ui-icon { right: auto; left: .2em; margin-left: 0; position: absolute; top: 50%; margin-top: -8px; } -.fm-button-icon-right .ui-icon { left: auto; right: .2em; margin-left: 0; position: absolute; top: 50%; margin-top: -8px;} -#nData, #pData { float: left; margin:3px;padding: 0; width: 15px; } -/* End Eorm edit */ -/*.ui-jqgrid .edit-cell {}*/ -.ui-jqgrid .selected-row, div.ui-jqgrid .selected-row td {font-style : normal;border-left: 0 none;} -/* inline edit actions button*/ -.ui-inline-del.ui-state-hover span, .ui-inline-edit.ui-state-hover span, -.ui-inline-save.ui-state-hover span, .ui-inline-cancel.ui-state-hover span { - margin: -1px; -} -/* Tree Grid */ -.ui-jqgrid .tree-wrap {float: left; position: relative;height: 18px;white-space: nowrap;overflow: hidden;} -.ui-jqgrid .tree-minus {position: absolute; height: 18px; width: 18px; overflow: hidden;} -.ui-jqgrid .tree-plus {position: absolute; height: 18px; width: 18px; overflow: hidden;} -.ui-jqgrid .tree-leaf {position: absolute; height: 18px; width: 18px;overflow: hidden;} -.ui-jqgrid .treeclick {cursor: pointer;} -/* moda dialog */ -* iframe.jqm {position:absolute;top:0;left:0;z-index:-1;} -/* width: expression(this.parentNode.offsetWidth+'px');height: expression(this.parentNode.offsetHeight+'px');}*/ -.ui-jqgrid-dnd tr td {border-right-width: 1px; border-right-color: inherit; border-right-style: solid; height:20px} -/* RTL Support */ -.ui-jqgrid .ui-jqgrid-caption-rtl {text-align: right;} -.ui-jqgrid .ui-jqgrid-hbox-rtl {float: right; padding-left: 20px;} -.ui-jqgrid .ui-jqgrid-resize-ltr {float: right;margin: -2px -2px -2px 0;} -.ui-jqgrid .ui-jqgrid-resize-rtl {float: left;margin: -2px 0 -1px -3px;} -.ui-jqgrid .ui-sort-rtl {left:0;} -.ui-jqgrid .tree-wrap-ltr {float: left;} -.ui-jqgrid .tree-wrap-rtl {float: right;} -.ui-jqgrid .ui-ellipsis {-moz-text-overflow:ellipsis;text-overflow:ellipsis;} - -/* Toolbar Search Menu */ -.ui-search-menu { position: absolute; padding: 2px 5px;} -.ui-jqgrid .ui-search-table { padding: 0; border: 0 none; height:20px; width:100%;} -.ui-jqgrid .ui-search-table .ui-search-oper { width:20px; } -a.g-menu-item, a.soptclass, a.clearsearchclass { cursor: pointer; } -.ui-jqgrid .ui-search-table .ui-search-input>input, -.ui-jqgrid .ui-search-table .ui-search-input>select -{ - display: block; - -moz-box-sizing: border-box; - -webkit-box-sizing: border-box; - box-sizing: border-box; -} -.ui-jqgrid .ui-jqgrid-view input, -.ui-jqgrid .ui-jqgrid-view select, -.ui-jqgrid .ui-jqgrid-view textarea, -.ui-jqgrid .ui-jqgrid-view button { - font-size: 11px -} diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/js/jquery/jqgrid/js/i18n/grid.locale-en.js b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/js/jquery/jqgrid/js/i18n/grid.locale-en.js deleted file mode 100644 index 6929885ecf..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/js/jquery/jqgrid/js/i18n/grid.locale-en.js +++ /dev/null @@ -1,170 +0,0 @@ -;(function($){ -/** - * jqGrid English Translation - * Tony Tomov tony@trirand.com - * http://trirand.com/blog/ - * Dual licensed under the MIT and GPL licenses: - * http://www.opensource.org/licenses/mit-license.php - * http://www.gnu.org/licenses/gpl.html -**/ -$.jgrid = $.jgrid || {}; -$.extend($.jgrid,{ - defaults : { - recordtext: "View {0} - {1} of {2}", - emptyrecords: "No records to view", - loadtext: "Loading...", - pgtext : "Page {0} of {1}" - }, - search : { - caption: "Search...", - Find: "Find", - Reset: "Reset", - odata: [{ oper:'eq', text:'equal'},{ oper:'ne', text:'not equal'},{ oper:'lt', text:'less'},{ oper:'le', text:'less or equal'},{ oper:'gt', text:'greater'},{ oper:'ge', text:'greater or equal'},{ oper:'bw', text:'begins with'},{ oper:'bn', text:'does not begin with'},{ oper:'in', text:'is in'},{ oper:'ni', text:'is not in'},{ oper:'ew', text:'ends with'},{ oper:'en', text:'does not end with'},{ oper:'cn', text:'contains'},{ oper:'nc', text:'does not contain'},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}], - groupOps: [{ op: "AND", text: "all" },{ op: "OR", text: "any" }], - operandTitle : "Click to select search operation.", - resetTitle : "Reset Search Value" - }, - edit : { - addCaption: "Add Record", - editCaption: "Edit Record", - bSubmit: "Submit", - bCancel: "Cancel", - bClose: "Close", - saveData: "Data has been changed! Save changes?", - bYes : "Yes", - bNo : "No", - bExit : "Cancel", - msg: { - required:"Field is required", - number:"Please, enter valid number", - minValue:"value must be greater than or equal to ", - maxValue:"value must be less than or equal to", - email: "is not a valid e-mail", - integer: "Please, enter valid integer value", - date: "Please, enter valid date value", - url: "is not a valid URL. Prefix required ('http://' or 'https://')", - nodefined : " is not defined!", - novalue : " return value is required!", - customarray : "Custom function should return array!", - customfcheck : "Custom function should be present in case of custom checking!" - - } - }, - view : { - caption: "View Record", - bClose: "Close" - }, - del : { - caption: "Delete", - msg: "Delete selected record(s)?", - bSubmit: "Delete", - bCancel: "Cancel" - }, - nav : { - edittext: "", - edittitle: "Edit selected row", - addtext:"", - addtitle: "Add new row", - deltext: "", - deltitle: "Delete selected row", - searchtext: "", - searchtitle: "Find records", - refreshtext: "", - refreshtitle: "Reload Grid", - alertcap: "Warning", - alerttext: "Please, select row", - viewtext: "", - viewtitle: "View selected row" - }, - col : { - caption: "Select columns", - bSubmit: "Ok", - bCancel: "Cancel" - }, - errors : { - errcap : "Error", - nourl : "No url is set", - norecords: "No records to process", - model : "Length of colNames <> colModel!" - }, - formatter : { - integer : {thousandsSeparator: ",", defaultValue: '0'}, - number : {decimalSeparator:".", thousandsSeparator: ",", decimalPlaces: 2, defaultValue: '0.00'}, - currency : {decimalSeparator:".", thousandsSeparator: ",", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'}, - date : { - dayNames: [ - "Sun", "Mon", "Tue", "Wed", "Thr", "Fri", "Sat", - "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" - ], - monthNames: [ - "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", - "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" - ], - AmPm : ["am","pm","AM","PM"], - S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th';}, - srcformat: 'Y-m-d', - newformat: 'n/j/Y', - parseRe : /[#%\\\/:_;.,\t\s-]/, - masks : { - // see http://php.net/manual/en/function.date.php for PHP format used in jqGrid - // and see http://docs.jquery.com/UI/Datepicker/formatDate - // and https://github.com/jquery/globalize#dates for alternative formats used frequently - // one can find on https://github.com/jquery/globalize/tree/master/lib/cultures many - // information about date, time, numbers and currency formats used in different countries - // one should just convert the information in PHP format - ISO8601Long:"Y-m-d H:i:s", - ISO8601Short:"Y-m-d", - // short date: - // n - Numeric representation of a month, without leading zeros - // j - Day of the month without leading zeros - // Y - A full numeric representation of a year, 4 digits - // example: 3/1/2012 which means 1 March 2012 - ShortDate: "n/j/Y", // in jQuery UI Datepicker: "M/d/yyyy" - // long date: - // l - A full textual representation of the day of the week - // F - A full textual representation of a month - // d - Day of the month, 2 digits with leading zeros - // Y - A full numeric representation of a year, 4 digits - LongDate: "l, F d, Y", // in jQuery UI Datepicker: "dddd, MMMM dd, yyyy" - // long date with long time: - // l - A full textual representation of the day of the week - // F - A full textual representation of a month - // d - Day of the month, 2 digits with leading zeros - // Y - A full numeric representation of a year, 4 digits - // g - 12-hour format of an hour without leading zeros - // i - Minutes with leading zeros - // s - Seconds, with leading zeros - // A - Uppercase Ante meridiem and Post meridiem (AM or PM) - FullDateTime: "l, F d, Y g:i:s A", // in jQuery UI Datepicker: "dddd, MMMM dd, yyyy h:mm:ss tt" - // month day: - // F - A full textual representation of a month - // d - Day of the month, 2 digits with leading zeros - MonthDay: "F d", // in jQuery UI Datepicker: "MMMM dd" - // short time (without seconds) - // g - 12-hour format of an hour without leading zeros - // i - Minutes with leading zeros - // A - Uppercase Ante meridiem and Post meridiem (AM or PM) - ShortTime: "g:i A", // in jQuery UI Datepicker: "h:mm tt" - // long time (with seconds) - // g - 12-hour format of an hour without leading zeros - // i - Minutes with leading zeros - // s - Seconds, with leading zeros - // A - Uppercase Ante meridiem and Post meridiem (AM or PM) - LongTime: "g:i:s A", // in jQuery UI Datepicker: "h:mm:ss tt" - SortableDateTime: "Y-m-d\\TH:i:s", - UniversalSortableDateTime: "Y-m-d H:i:sO", - // month with year - // Y - A full numeric representation of a year, 4 digits - // F - A full textual representation of a month - YearMonth: "F, Y" // in jQuery UI Datepicker: "MMMM, yyyy" - }, - reformatAfterEdit : false - }, - baseLinkUrl: '', - showAction: '', - target: '', - checkbox : {disabled:true}, - idName : 'id' - } -}); -})(jQuery); diff --git a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/js/jquery/jqgrid/js/jquery.jqGrid.min.js b/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/js/jquery/jqgrid/js/jquery.jqGrid.min.js deleted file mode 100644 index 340d0a008c..0000000000 --- a/nifi/nar-bundles/monitor-threshold-bundle/ui/src/main/webapp/js/jquery/jqgrid/js/jquery.jqGrid.min.js +++ /dev/null @@ -1,545 +0,0 @@ -/* -* jqGrid 4.6.0 - jQuery Grid -* Copyright (c) 2008, Tony Tomov, tony@trirand.com -* Dual licensed under the MIT or GPL licenses -* http://www.opensource.org/licenses/mit-license.php -* http://www.gnu.org/licenses/gpl-2.0.html -* Date:2014-02-20 -* Modules: grid.base.js; jquery.fmatter.js; grid.custom.js; grid.common.js; grid.formedit.js; grid.filter.js; grid.inlinedit.js; grid.celledit.js; jqModal.js; jqDnR.js; grid.subgrid.js; grid.grouping.js; grid.treegrid.js; grid.pivot.js; grid.import.js; JsonXml.js; grid.tbltogrid.js; grid.jqueryui.js; -*/ -(function(b){b.jgrid=b.jgrid||{};b.extend(b.jgrid,{version:"4.6.0",htmlDecode:function(b){return b&&(" "===b||" "===b||1===b.length&&160===b.charCodeAt(0))?"":b?String(b).replace(/>/g,">").replace(/</g,"<").replace(/"/g,'"').replace(/&/g,"&"):b},htmlEncode:function(b){return b?String(b).replace(/&/g,"&").replace(/\"/g,""").replace(//g,">"):b},format:function(e){var f=b.makeArray(arguments).slice(1);null==e&&(e="");return e.replace(/\{(\d+)\}/g, -function(b,d){return f[d]})},msie:"Microsoft Internet Explorer"===navigator.appName,msiever:function(){var b=-1;null!=/MSIE ([0-9]{1,}[.0-9]{0,})/.exec(navigator.userAgent)&&(b=parseFloat(RegExp.$1));return b},getCellIndex:function(e){e=b(e);if(e.is("tr"))return-1;e=(e.is("td")||e.is("th")?e:e.closest("td,th"))[0];return b.jgrid.msie?b.inArray(e,e.parentNode.cells):e.cellIndex},stripHtml:function(b){b=String(b);var f=/<("[^"]*"|'[^']*'|[^'">])*>/gi;return b?(b=b.replace(f,""))&&" "!==b&&" "!== -b?b.replace(/\"/g,"'"):"":b},stripPref:function(e,f){var c=b.type(e);if("string"===c||"number"===c)e=String(e),f=""!==e?String(f).replace(String(e),""):f;return f},parse:function(e){"while(1);"===e.substr(0,9)&&(e=e.substr(9));"/*"===e.substr(0,2)&&(e=e.substr(2,e.length-4));e||(e="{}");return!0===b.jgrid.useJSON&&"object"===typeof JSON&&"function"===typeof JSON.parse?JSON.parse(e):eval("("+e+")")},parseDate:function(e,f,c,d){var a=/^\/Date\((([-+])?[0-9]+)(([-+])([0-9]{2})([0-9]{2}))?\)\/$/,l="string"=== -typeof f?f.match(a):null,a=function(a,b){a=String(a);for(b=parseInt(b,10)||2;a.lengthl&&(f[k]=l+1,g.m=f[k])),"F"===e[k]&&(l=b.inArray(f[k],d.monthNames,12),-1!==l&&11l&&f[k]===d.AmPm[l]&&(f[k]=l,g.h=h(f[k],g.h))),"A"===e[k]&&(l=b.inArray(f[k],d.AmPm),-1!==l&&1=h?g.y=1900+g.y:0<=h&&69>=h&&(g.y=2E3+g.y);h=new Date(g.y,g.m,g.d,g.h,g.i,g.s,g.u);0q?Math.floor((x+q-1)/7)+1:Math.floor((x+q-1)/7)|| -(4>((new Date(p-1,0,1)).getDay()+6)%7?53:52),F:d.monthNames[m-1+12],m:a(m),M:d.monthNames[m-1],n:m,t:"?",L:"?",o:"?",Y:p,y:String(p).substring(2),a:12>e?d.AmPm[0]:d.AmPm[1],A:12>e?d.AmPm[2]:d.AmPm[3],B:"?",g:e%12||12,G:e,h:a(e%12||12),H:a(e),i:a(f),s:a(k),u:n,e:"?",I:"?",O:(0?@\[\\\]\^`{|}~]/g,"\\$&")},guid:1,uidPref:"jqg",randId:function(e){return(e||b.jgrid.uidPref)+b.jgrid.guid++},getAccessor:function(b,f){var c,d,a=[],l;if("function"===typeof f)return f(b);c=b[f];if(void 0===c)try{if("string"===typeof f&& -(a=f.split(".")),l=a.length)for(c=b;c&&l--;)d=a.shift(),c=c[d]}catch(g){}return c},getXmlData:function(e,f,c){var d="string"===typeof f?f.match(/^(.*)\[(\w+)\]$/):null;if("function"===typeof f)return f(e);if(d&&d[2])return d[1]?b(d[1],e).attr(d[2]):b(e).attr(d[2]);e=b(f,e);return c?e:0
"), -f=e.appendTo("body").find("td").width();e.remove();return 0.1b?d:0;l||"number"===typeof a||"number"===typeof b||(a=String(a),b=String(b));return ab?d:0};this._performSort=function(){0!==x.length&&(a=d._doSort(a,0))};this._doSort=function(a,b){var l=x[b].by,e=x[b].dir,g=x[b].type,c=x[b].datefmt,f=x[b].sfunc;if(b===x.length-1)return d._getOrder(a,l,e,g,c,f);b++;l=d._getGroup(a,l,e,g,c);e=[];for(g=0;g",c)};this.less=function(a,b,c){return d._compareValues(d.less,a,b,"<",c)};this.greaterOrEquals=function(a,b,c){return d._compareValues(d.greaterOrEquals,a,b,">=",c)};this.lessOrEquals=function(a,b,c){return d._compareValues(d.lessOrEquals,a,b,"<=",c)};this.startsWith=function(a,c){var e=null==c?a:c,e=g?b.trim(e.toString()).length:e.toString().length;G?d._append(d._getStr("jQuery.jgrid.getAccessor(this,'"+ -a+"')")+".substr(0,"+e+") == "+d._getStr('"'+d._toStr(c)+'"')):(null!=c&&(e=g?b.trim(c.toString()).length:c.toString().length),d._append(d._getStr("this")+".substr(0,"+e+") == "+d._getStr('"'+d._toStr(a)+'"')));d._setCommand(d.startsWith,a);d._resetNegate();return d};this.endsWith=function(a,c){var e=null==c?a:c,e=g?b.trim(e.toString()).length:e.toString().length;G?d._append(d._getStr("jQuery.jgrid.getAccessor(this,'"+a+"')")+".substr("+d._getStr("jQuery.jgrid.getAccessor(this,'"+a+"')")+".length-"+ -e+","+e+') == "'+d._toStr(c)+'"'):d._append(d._getStr("this")+".substr("+d._getStr("this")+'.length-"'+d._toStr(a)+'".length,"'+d._toStr(a)+'".length) == "'+d._toStr(a)+'"');d._setCommand(d.endsWith,a);d._resetNegate();return d};this.contains=function(a,b){G?d._append(d._getStr("jQuery.jgrid.getAccessor(this,'"+a+"')")+'.indexOf("'+d._toStr(b)+'",0) > -1'):d._append(d._getStr("this")+'.indexOf("'+d._toStr(a)+'",0) > -1');d._setCommand(d.contains,a);d._resetNegate();return d};this.groupBy=function(b, -c,e,l){return d._hasData()?d._getGroup(a,b,c,e,l):null};this.orderBy=function(a,c,e,l,g){c=null==c?"a":b.trim(c.toString().toLowerCase());null==e&&(e="text");null==l&&(l="Y-m-d");null==g&&(g=!1);if("desc"===c||"descending"===c)c="d";if("asc"===c||"ascending"===c)c="a";x.push({by:a,dir:c,type:e,datefmt:l,sfunc:g});return d};return d}(e,null)},getMethod:function(e){return this.getAccessor(b.fn.jqGrid,e)},extend:function(e){b.extend(b.fn.jqGrid,e);this.no_legacy_api||b.fn.extend(e)}});b.fn.jqGrid=function(e){if("string"=== -typeof e){var f=b.jgrid.getMethod(e);if(!f)throw"jqGrid - No such method: "+e;var c=b.makeArray(arguments).slice(1);return f.apply(this,c)}return this.each(function(){if(!this.grid){var d=b.extend(!0,{url:"",height:150,page:1,rowNum:20,rowTotal:null,records:0,pager:"",pgbuttons:!0,pginput:!0,colModel:[],rowList:[],colNames:[],sortorder:"asc",sortname:"",datatype:"xml",mtype:"GET",altRows:!1,selarrrow:[],savedRow:[],shrinkToFit:!0,xmlReader:{},jsonReader:{},subGrid:!1,subGridModel:[],reccount:0,lastpage:0, -lastsort:0,selrow:null,beforeSelectRow:null,onSelectRow:null,onSortCol:null,ondblClickRow:null,onRightClickRow:null,onPaging:null,onSelectAll:null,onInitGrid:null,loadComplete:null,gridComplete:null,loadError:null,loadBeforeSend:null,afterInsertRow:null,beforeRequest:null,beforeProcessing:null,onHeaderClick:null,viewrecords:!1,loadonce:!1,multiselect:!1,multikey:!1,editurl:null,search:!1,caption:"",hidegrid:!0,hiddengrid:!1,postData:{},userData:{},treeGrid:!1,treeGridModel:"nested",treeReader:{}, -treeANode:-1,ExpandColumn:null,tree_root_level:0,prmNames:{page:"page",rows:"rows",sort:"sidx",order:"sord",search:"_search",nd:"nd",id:"id",oper:"oper",editoper:"edit",addoper:"add",deloper:"del",subgridid:"id",npage:null,totalrows:"totalrows"},forceFit:!1,gridstate:"visible",cellEdit:!1,cellsubmit:"remote",nv:0,loadui:"enable",toolbar:[!1,""],scroll:!1,multiboxonly:!1,deselectAfterSort:!0,scrollrows:!1,autowidth:!1,scrollOffset:18,cellLayout:5,subGridWidth:20,multiselectWidth:20,gridview:!1,rownumWidth:25, -rownumbers:!1,pagerpos:"center",recordpos:"right",footerrow:!1,userDataOnFooter:!1,hoverrows:!0,altclass:"ui-priority-secondary",viewsortcols:[!1,"vertical",!0],resizeclass:"",autoencode:!1,remapColumns:[],ajaxGridOptions:{},direction:"ltr",toppager:!1,headertitles:!1,scrollTimeout:40,data:[],_index:{},grouping:!1,groupingView:{groupField:[],groupOrder:[],groupText:[],groupColumnShow:[],groupSummary:[],showSummaryOnHide:!1,sortitems:[],sortnames:[],summary:[],summaryval:[],plusicon:"ui-icon-circlesmall-plus", -minusicon:"ui-icon-circlesmall-minus",displayField:[],groupSummaryPos:[],formatDisplayField:[],_locgr:!1},ignoreCase:!1,cmTemplate:{},idPrefix:"",multiSort:!1},b.jgrid.defaults,e||{}),a=this,c={headers:[],cols:[],footers:[],dragStart:function(c,e,g){var f=b(this.bDiv).offset().left;this.resizing={idx:c,startX:e.clientX,sOL:e.clientX-f};this.hDiv.style.cursor="col-resize";this.curGbox=b("#rs_m"+b.jgrid.jqID(d.id),"#gbox_"+b.jgrid.jqID(d.id));this.curGbox.css({display:"block",left:e.clientX-f,top:g[1], -height:g[2]});b(a).triggerHandler("jqGridResizeStart",[e,c]);b.isFunction(d.resizeStart)&&d.resizeStart.call(a,e,c);document.onselectstart=function(){return!1}},dragMove:function(a){if(this.resizing){var b=a.clientX-this.resizing.startX;a=this.headers[this.resizing.idx];var c="ltr"===d.direction?a.width+b:a.width-b,e;33=k&&(void 0===d.lastpage||parseInt((m+g+f-1)/f,10)<=d.lastpage)&&(n=parseInt((a-m+f-1)/f,10),0<=m||2>n||!0===d.scroll?(E=Math.round((m+g)/f)+1,k=-1):k=1);0d.lastpage||1===d.lastpage||E===d.page&&E===d.lastpage)||(c.hDiv.loading?c.timer=setTimeout(c.populateVisible,d.scrollTimeout):(d.page=E,C&&(c.selectionPreserver(e[0]), -c.emptyRows.call(e[0],!1,!1)),c.populate(n)))}}},scrollGrid:function(a){if(d.scroll){var b=c.bDiv.scrollTop;void 0===c.scrollTop&&(c.scrollTop=0);b!==c.scrollTop&&(c.scrollTop=b,c.timer&&clearTimeout(c.timer),c.timer=setTimeout(c.populateVisible,d.scrollTimeout))}c.hDiv.scrollLeft=c.bDiv.scrollLeft;d.footerrow&&(c.sDiv.scrollLeft=c.bDiv.scrollLeft);a&&a.stopPropagation()},selectionPreserver:function(a){var c=a.p,d=c.selrow,e=c.selarrrow?b.makeArray(c.selarrrow):null,f=a.grid.bDiv.scrollLeft,g=function(){var h; -c.selrow=null;c.selarrrow=[];if(c.multiselect&&e&&0=document.documentMode)alert("Grid can not be used in this ('quirks') mode!");else{b(this).empty().attr("tabindex", -"0");this.p=d;this.p.useProp=!!b.fn.prop;var g,f;if(0===this.p.colNames.length)for(g=0;g"),n=b.jgrid.msie;a.p.direction=b.trim(a.p.direction.toLowerCase());-1===b.inArray(a.p.direction,["ltr","rtl"])&&(a.p.direction="ltr");f=a.p.direction;b(k).insertBefore(this);b(this).removeClass("scroll").appendTo(k); -var m=b("
");b(m).attr({id:"gbox_"+this.id,dir:f}).insertBefore(k);b(k).attr("id","gview_"+this.id).appendTo(m);b("
").insertBefore(k);b("
"+this.p.loadtext+"
").insertBefore(k);b(this).attr({cellspacing:"0",cellpadding:"0",border:"0",role:"grid","aria-multiselectable":!!this.p.multiselect, -"aria-labelledby":"gbox_"+this.id});var r=function(a,b){a=parseInt(a,10);return isNaN(a)?b||0:a},p=function(d,e,f,g,pa,h){var k=a.p.colModel[d],m=k.align,E='style="',n=k.classes,C=k.name,A=[];m&&(E+="text-align:"+m+";");!0===k.hidden&&(E+="display:none;");if(0===e)E+="width: "+c.headers[d].width+"px;";else if(k.cellattr&&b.isFunction(k.cellattr)&&(d=k.cellattr.call(a,pa,f,g,k,h))&&"string"===typeof d)if(d=d.replace(/style/i,"style").replace(/title/i,"title"),-1"+b+""},U=function(b,c,d,e){e='";return'"+e+""},M=function(a,b,c,d){c=(parseInt(c,10)-1)*parseInt(d,10)+1+b;return'"+c+""},ea=function(b){var c,d=[],e=0,f;for(f=0;f"},K=function(c,d,e,f,g){var h=new Date,l="local"!==a.p.datatype&&a.p.loadonce||"xmlstring"===a.p.datatype,k=a.p.xmlReader,m="local"===a.p.datatype?"local":"xml";l&&(a.p.data=[],a.p._index={},a.p.localReader.id="_id_");a.p.reccount=0;if(b.isXMLDoc(c)){-1!==a.p.treeANode||a.p.scroll?e=1=a.p.page&&(a.p.page=1);if(c&&S){g&&(D*=g+1);g=b.isFunction(a.p.afterInsertRow); -var F=!1,J;a.p.grouping&&(F=!0===a.p.groupingView.groupCollapse,J=b.jgrid.getMethod("groupingPrepare"));for(;I");a.p.grouping&&(y.push(s),a.p.groupingView._locgr||J.call(n,v,I),s=[]);if(l||!0===a.p.treeGrid)v._id_=b.jgrid.stripPref(a.p.idPrefix,H),a.p.data.push(v),a.p._index[v._id_]=a.p.data.length-1;!1===a.p.gridview&&(b("tbody:first",d).append(s.join("")),n.triggerHandler("jqGridAfterInsertRow",[H,v,w]),g&&a.p.afterInsertRow.call(a,H,v,w), -s=[]);v={};R++;I++;if(R===D)break}}!0===a.p.gridview&&(A=-1=a.p.page&&(a.p.page=1);var I=parseInt(a.p.rowNum,10),F=a.p.scroll?b.jgrid.randId():1,J=!1,K;g&&(I*=g+1);"local"!==a.p.datatype||a.p.deselectAfterSort||(J=!0);var N=b.isFunction(a.p.afterInsertRow),P=[],Q=!1,O;a.p.grouping&&(Q=!0===a.p.groupingView.groupCollapse,O=b.jgrid.getMethod("groupingPrepare"));for(;A");a.p.grouping&&(P.push(L),a.p.groupingView._locgr||O.call(m,w,A),L=[]);if(l||!0===a.p.treeGrid)w._id_=b.jgrid.stripPref(a.p.idPrefix,s),a.p.data.push(w),a.p._index[w._id_]=a.p.data.length-1;!1===a.p.gridview&&(b("#"+b.jgrid.jqID(a.p.id)+" tbody:first").append(L.join("")),m.triggerHandler("jqGridAfterInsertRow", -[s,w,g]),N&&a.p.afterInsertRow.call(a,s,w,g),L=[]);w={};n++;A++;if(n===I)break}!0===a.p.gridview&&(H=-1=a.p.page&&(a.p.page=Math.min(1,a.p.lastpage));null!==f.search&&(e[f.search]=a.p.search);null!==f.nd&&(e[f.nd]=(new Date).getTime());null!==f.rows&&(e[f.rows]=a.p.rowNum);null!==f.page&&(e[f.page]=a.p.page);null!==f.sort&&(e[f.sort]=a.p.sortname);null!==f.order&&(e[f.order]=a.p.sortorder);null!==a.p.rowTotal&&null!==f.totalrows&&(e[f.totalrows]=a.p.rowTotal);var h=b.isFunction(a.p.loadComplete),k=h?a.p.loadComplete: -null,l=0;c=c||1;1
").attr("dir","ltr");if(0";k+=""}"rtl"===f&&(g+=k);!0===a.p.pginput&&(d=""+b.jgrid.format(a.p.pgtext||"","","")+"");!0===a.p.pgbuttons? -(m=["first"+e,"prev"+e,"next"+e,"last"+e],"rtl"===f&&m.reverse(),g+="",g+="",g=g+(""!==d?""+d+"": -"")+(""),g+=""):""!==d&&(g+=d);"ltr"===f&&(g+=k);g+="";!0===a.p.viewrecords&&b("td#"+c+"_"+a.p.recordpos,"#"+l).append("
");b("td#"+c+"_"+a.p.pagerpos,"#"+l).append(g);k=b(".ui-jqgrid").css("font-size")|| -"11px";b(document.body).append("");g=b(g).clone().appendTo("#testpg").width();b("#testpg").remove();0"),this.p.colModel.unshift({name:"cb",width:b.jgrid.cell_width?a.p.multiselectWidth+a.p.cellLayout:a.p.multiselectWidth,sortable:!1,resizable:!1,hidedlg:!0,search:!1,align:"center",fixed:!0}));this.p.rownumbers&&(this.p.colNames.unshift(""),this.p.colModel.unshift({name:"rn",width:a.p.rownumWidth, -sortable:!1,resizable:!1,hidedlg:!0,search:!1,align:"center",fixed:!0}));a.p.xmlReader=b.extend(!0,{root:"rows",row:"row",page:"rows>page",total:"rows>total",records:"rows>records",repeatitems:!0,cell:"cell",id:"[id]",userdata:"userdata",subgrid:{root:"rows",row:"row",repeatitems:!0,cell:"cell"}},a.p.xmlReader);a.p.jsonReader=b.extend(!0,{root:"rows",page:"page",total:"total",records:"records",repeatitems:!0,cell:"cell",id:"id",userdata:"userdata",subgrid:{root:"rows",repeatitems:!0,cell:"cell"}}, -a.p.jsonReader);a.p.localReader=b.extend(!0,{root:"rows",page:"page",total:"total",records:"records",repeatitems:!1,cell:"cell",id:"id",userdata:"userdata",subgrid:{root:"rows",repeatitems:!0,cell:"cell"}},a.p.localReader);a.p.scroll&&(a.p.pgbuttons=!1,a.p.pginput=!1,a.p.rowList=[]);a.p.data.length&&O();var D="",ta,F,ja,fa,ka,y,t,ba,ua=ba="",ga=[],va=[];F=[];if(!0===a.p.shrinkToFit&&!0===a.p.forceFit)for(g=a.p.colModel.length-1;0<=g;g--)if(!a.p.colModel[g].hidden){a.p.colModel[g].resizable= -!1;break}"horizontal"===a.p.viewsortcols[1]&&(ba=" ui-i-asc",ua=" ui-i-desc");ta=n?"class='ui-th-div-ie'":"";ba="");if(a.p.multiSort)for(ga=a.p.sortname.split(","),g=0;g",F=a.p.colModel[g].index||a.p.colModel[g].name,D+="
"+a.p.colNames[g],a.p.colModel[g].width=a.p.colModel[g].width?parseInt(a.p.colModel[g].width,10): -150,"boolean"!==typeof a.p.colModel[g].title&&(a.p.colModel[g].title=!0),a.p.colModel[g].lso="",F===a.p.sortname&&(a.p.lastsort=g),a.p.multiSort&&(F=b.inArray(F,ga),-1!==F&&(a.p.colModel[g].lso=va[F])),D+=ba+"
";D+="";ba=null;b(this).append(D);b("thead tr:first th",this).hover(function(){b(this).addClass("ui-state-hover")},function(){b(this).removeClass("ui-state-hover")});if(this.p.multiselect){var la=[],ca;b("#cb_"+b.jgrid.jqID(a.p.id),this).bind("click",function(){a.p.selarrrow= -[];var c=!0===a.p.frozenColumns?a.p.id+"_frozen":"";this.checked?(b(a.rows).each(function(d){0c&&(this.hidden=!a.p.groupingView.groupColumnShow[c])}this.widthOrg=k=r(this.width,0);!1===this.hidden&&(d+=k+e,this.fixed?p+=k+e:g++)});isNaN(a.p.width)&&(a.p.width=d+(!1!==a.p.shrinkToFit||isNaN(a.p.height)?0:h));c.width=a.p.width;a.p.tblwidth=d;!1===a.p.shrinkToFit&&!0===a.p.forceFit&&(a.p.forceFit=!1);!0===a.p.shrinkToFit&&0a.p.width&&(a.p.colModel[f].width-=a.p.tblwidth-parseInt(a.p.width,10),a.p.tblwidth=a.p.width))})();b(m).css("width",c.width+"px").append("
 
");b(k).css("width",c.width+"px");var D=b("thead:first",a).get(0),V="";a.p.footerrow&&(V+="");var k=b("tr:first",D),da="";a.p.disableClick=!1;b("th",k).each(function(d){ja=a.p.colModel[d].width;void 0===a.p.colModel[d].resizable&&(a.p.colModel[d].resizable= -!0);a.p.colModel[d].resizable?(fa=document.createElement("span"),b(fa).html(" ").addClass("ui-jqgrid-resize ui-jqgrid-resize-"+f).css("cursor","col-resize"),b(this).addClass(a.p.resizeclass)):fa="";b(this).css("width",ja+"px").prepend(fa);fa=null;var e="";a.p.colModel[d].hidden&&(b(this).css("display","none"),e="display:none;");da+="";c.headers[d]={width:ja,el:this};ka=a.p.colModel[d].sortable;"boolean"!==typeof ka&&(ka=a.p.colModel[d].sortable= -!0);e=a.p.colModel[d].name;"cb"!==e&&"subgrid"!==e&&"rn"!==e&&a.p.viewsortcols[2]&&b(">div",this).addClass("ui-jqgrid-sortable");ka&&(a.p.multiSort?a.p.viewsortcols[0]?(b("div span.s-ico",this).show(),a.p.colModel[d].lso&&b("div span.ui-icon-"+a.p.colModel[d].lso,this).removeClass("ui-state-disabled")):a.p.colModel[d].lso&&(b("div span.s-ico",this).show(),b("div span.ui-icon-"+a.p.colModel[d].lso,this).removeClass("ui-state-disabled")):a.p.viewsortcols[0]?(b("div span.s-ico",this).show(),d===a.p.lastsort&& -b("div span.ui-icon-"+a.p.sortorder,this).removeClass("ui-state-disabled")):d===a.p.lastsort&&(b("div span.s-ico",this).show(),b("div span.ui-icon-"+a.p.sortorder,this).removeClass("ui-state-disabled")));a.p.footerrow&&(V+="")}).mousedown(function(d){if(1===b(d.target).closest("th>span.ui-jqgrid-resize").length){var e=sa(this);if(!0===a.p.forceFit){var g=a.p,f=e,h;for(h=e+1;h
 
").append(D),J=a.p.caption&&!0===a.p.hiddengrid?!0:!1;g=b("
");D=null;c.hDiv=document.createElement("div");b(c.hDiv).css({width:c.width+"px"}).addClass("ui-state-default ui-jqgrid-hdiv").append(g);b(g).append(k);k=null;J&&b(c.hDiv).hide();a.p.pager&&("string"===typeof a.p.pager?"#"!==a.p.pager.substr(0,1)&&(a.p.pager="#"+a.p.pager):a.p.pager="#"+b(a.p.pager).attr("id"),b(a.p.pager).css({width:c.width+"px"}).addClass("ui-state-default ui-jqgrid-pager ui-corner-bottom").appendTo(m),J&&b(a.p.pager).hide(),qa(a.p.pager,""));!1=== -a.p.cellEdit&&!0===a.p.hoverrows&&b(a).bind("mouseover",function(a){t=b(a.target).closest("tr.jqgrow");"ui-subgrid"!==b(t).attr("class")&&b(t).addClass("ui-state-hover")}).bind("mouseout",function(a){t=b(a.target).closest("tr.jqgrow");b(t).removeClass("ui-state-hover")});var B,N,ma;b(a).before(c.hDiv).click(function(c){y=c.target;t=b(y,a.rows).closest("tr.jqgrow");if(0===b(t).length||-1a.p.lastpage&&(e=a.p.lastpage);1>e&&(e=1);a.p.page=e;a.grid.bDiv.scrollTop=a.grid.prevRowHeight?(e-1)*a.grid.prevRowHeight*a.p.rowNum:0}a.grid.prevRowHeight&&a.p.scroll?(delete a.p.lastpage,a.grid.populateVisible()):a.grid.populate(); -!0===a.p._inlinenav&&b(a).jqGrid("showAddEditButtons");return!1}).dblclick(function(c){y=c.target;t=b(y,a.rows).closest("tr.jqgrow");0!==b(t).length&&(B=t[0].rowIndex,N=b.jgrid.getCellIndex(y),b(a).triggerHandler("jqGridDblClickRow",[b(t).attr("id"),B,N,c]),b.isFunction(a.p.ondblClickRow)&&a.p.ondblClickRow.call(a,b(t).attr("id"),B,N,c))}).bind("contextmenu",function(c){y=c.target;t=b(y,a.rows).closest("tr.jqgrow");0!==b(t).length&&(a.p.multiselect||b(a).jqGrid("setSelection",t[0].id,!0,c),B=t[0].rowIndex, -N=b.jgrid.getCellIndex(y),b(a).triggerHandler("jqGridRightClickRow",[b(t).attr("id"),B,N,c]),b.isFunction(a.p.onRightClickRow)&&a.p.onRightClickRow.call(a,b(t).attr("id"),B,N,c))});c.bDiv=document.createElement("div");n&&"auto"===String(a.p.height).toLowerCase()&&(a.p.height="100%");b(c.bDiv).append(b('
').append("
").append(this)).addClass("ui-jqgrid-bdiv").css({height:a.p.height+(isNaN(a.p.height)?"":"px"), -width:c.width+"px"}).scroll(c.scrollGrid);b("table:first",c.bDiv).css({width:a.p.tblwidth+"px"});b.support.tbody||2===b("tbody",this).length&&b("tbody:gt(0)",this).remove();a.p.multikey&&(b.jgrid.msie?b(c.bDiv).bind("selectstart",function(){return!1}):b(c.bDiv).bind("mousedown",function(){return!1}));J&&b(c.bDiv).hide();c.cDiv=document.createElement("div");var na=!0===a.p.hidegrid?b("").hover(function(){na.addClass("ui-state-hover")}, -function(){na.removeClass("ui-state-hover")}).append("").css("rtl"===f?"left":"right","0px"):"";b(c.cDiv).append(na).append(""+a.p.caption+"").addClass("ui-jqgrid-titlebar ui-jqgrid-caption"+("rtl"===f?"-rtl":"")+" ui-widget-header ui-corner-top ui-helper-clearfix");b(c.cDiv).insertBefore(c.hDiv);a.p.toolbar[0]&&(c.uDiv=document.createElement("div"),"top"===a.p.toolbar[1]?b(c.uDiv).insertBefore(c.hDiv):"bottom"=== -a.p.toolbar[1]&&b(c.uDiv).insertAfter(c.hDiv),"both"===a.p.toolbar[1]?(c.ubDiv=document.createElement("div"),b(c.uDiv).addClass("ui-userdata ui-state-default").attr("id","t_"+this.id).insertBefore(c.hDiv),b(c.ubDiv).addClass("ui-userdata ui-state-default").attr("id","tb_"+this.id).insertAfter(c.hDiv),J&&b(c.ubDiv).hide()):b(c.uDiv).width(c.width).addClass("ui-userdata ui-state-default").attr("id","t_"+this.id),J&&b(c.uDiv).hide());a.p.toppager&&(a.p.toppager=b.jgrid.jqID(a.p.id)+"_toppager",c.topDiv= -b("
")[0],a.p.toppager="#"+a.p.toppager,b(c.topDiv).addClass("ui-state-default ui-jqgrid-toppager").width(c.width).insertBefore(c.hDiv),qa(a.p.toppager,"_t"));a.p.footerrow&&(c.sDiv=b("
")[0],g=b("
"),b(c.sDiv).append(g).width(c.width).insertAfter(c.hDiv),b(g).append(V),c.footers=b(".ui-jqgrid-ftable",c.sDiv)[0].rows[0].cells,a.p.rownumbers&&(c.footers[0].className="ui-state-default jqgrid-rownum"), -J&&b(c.sDiv).hide());g=null;if(a.p.caption){var ya=a.p.datatype;!0===a.p.hidegrid&&(b(".ui-jqgrid-titlebar-close",c.cDiv).click(function(d){var e=b.isFunction(a.p.onHeaderClick),g=".ui-jqgrid-bdiv, .ui-jqgrid-hdiv, .ui-jqgrid-pager, .ui-jqgrid-sdiv",f,h=this;!0===a.p.toolbar[0]&&("both"===a.p.toolbar[1]&&(g+=", #"+b(c.ubDiv).attr("id")),g+=", #"+b(c.uDiv).attr("id"));f=b(g,"#gview_"+b.jgrid.jqID(a.p.id)).length;"visible"===a.p.gridstate?b(g,"#gbox_"+b.jgrid.jqID(a.p.id)).slideUp("fast",function(){f--; -0===f&&(b("span",h).removeClass("ui-icon-circle-triangle-n").addClass("ui-icon-circle-triangle-s"),a.p.gridstate="hidden",b("#gbox_"+b.jgrid.jqID(a.p.id)).hasClass("ui-resizable")&&b(".ui-resizable-handle","#gbox_"+b.jgrid.jqID(a.p.id)).hide(),b(a).triggerHandler("jqGridHeaderClick",[a.p.gridstate,d]),e&&(J||a.p.onHeaderClick.call(a,a.p.gridstate,d)))}):"hidden"===a.p.gridstate&&b(g,"#gbox_"+b.jgrid.jqID(a.p.id)).slideDown("fast",function(){f--;0===f&&(b("span",h).removeClass("ui-icon-circle-triangle-s").addClass("ui-icon-circle-triangle-n"), -J&&(a.p.datatype=ya,Q(),J=!1),a.p.gridstate="visible",b("#gbox_"+b.jgrid.jqID(a.p.id)).hasClass("ui-resizable")&&b(".ui-resizable-handle","#gbox_"+b.jgrid.jqID(a.p.id)).show(),b(a).triggerHandler("jqGridHeaderClick",[a.p.gridstate,d]),e&&(J||a.p.onHeaderClick.call(a,a.p.gridstate,d)))});return!1}),J&&(a.p.datatype="local",b(".ui-jqgrid-titlebar-close",c.cDiv).trigger("click")))}else b(c.cDiv).hide();b(c.hDiv).after(c.bDiv).mousemove(function(a){if(c.resizing)return c.dragMove(a),!1});b(".ui-jqgrid-labels", -c.hDiv).bind("selectstart",function(){return!1});b(document).bind("mouseup.jqGrid"+a.p.id,function(){return c.resizing?(c.dragEnd(),!1):!0});a.formatCol=p;a.sortData=ra;a.updatepager=function(c,d){var e,g,f,h,k,l,m,n="",p=a.p.pager?"_"+b.jgrid.jqID(a.p.pager.substr(1)):"",q=a.p.toppager?"_"+a.p.toppager.substr(1):"";f=parseInt(a.p.page,10)-1;0>f&&(f=0);f*=parseInt(a.p.rowNum,10);k=f+a.p.reccount;if(a.p.scroll){e=b("tbody:first > tr:gt(0)",a.grid.bDiv);f=k-e.length;a.p.reccount=e.length;if(e=e.outerHeight()|| -a.grid.prevRowHeight)g=f*e,m=parseInt(a.p.records,10)*e,b(">div:first",a.grid.bDiv).css({height:m}).children("div:first").css({height:g,display:g?"":"none"}),0==a.grid.bDiv.scrollTop&&1=e&&(e=g=0),1===e||0===e?(b("#first"+ -p+", #prev"+p).addClass("ui-state-disabled").removeClass("ui-state-hover"),a.p.toppager&&b("#first_t"+q+", #prev_t"+q).addClass("ui-state-disabled").removeClass("ui-state-hover")):(b("#first"+p+", #prev"+p).removeClass("ui-state-disabled"),a.p.toppager&&b("#first_t"+q+", #prev_t"+q).removeClass("ui-state-disabled")),e===g||0===e?(b("#next"+p+", #last"+p).addClass("ui-state-disabled").removeClass("ui-state-hover"),a.p.toppager&&b("#next_t"+q+", #last_t"+q).addClass("ui-state-disabled").removeClass("ui-state-hover")): -(b("#next"+p+", #last"+p).removeClass("ui-state-disabled"),a.p.toppager&&b("#next_t"+q+", #last_t"+q).removeClass("ui-state-disabled")));!0===c&&!0===a.p.rownumbers&&b(">td.jqgrid-rownum",a.rows).each(function(a){b(this).html(f+1+a)});d&&a.p.jqgdnd&&b(a).jqGrid("gridDnD","updateDnD");b(a).triggerHandler("jqGridGridComplete");b.isFunction(a.p.gridComplete)&&a.p.gridComplete.call(a);b(a).triggerHandler("jqGridAfterGridComplete")};a.refreshIndex=O;a.setHeadCheckBox=ha;a.constructTr=$;a.formatter=function(a, -b,c,d,e){return x(a,b,c,d,e)};b.extend(c,{populate:Q,emptyRows:X,beginReq:P,endReq:T});this.grid=c;a.addXmlData=function(b){K(b,a.grid.bDiv)};a.addJSONData=function(b){Y(b,a.grid.bDiv)};this.grid.cols=this.rows[0].cells;b(a).triggerHandler("jqGridInitGrid");b.isFunction(a.p.onInitGrid)&&a.p.onInitGrid.call(a);Q();a.p.hiddengrid=!1}}}})};b.jgrid.extend({getGridParam:function(b){var f=this[0];if(f&&f.grid)return b?void 0!==f.p[b]?f.p[b]:null:f.p},setGridParam:function(e){return this.each(function(){this.grid&& -"object"===typeof e&&b.extend(!0,this.p,e)})},getGridRowById:function(e){var f;this.each(function(){try{for(var c=this.rows.length;c--;)if(e.toString()===this.rows[c].id){f=this.rows[c];break}}catch(d){f=b(this.grid.bDiv).find("#"+b.jgrid.jqID(e))}});return f},getDataIDs:function(){var e=[],f=0,c,d=0;this.each(function(){if((c=this.rows.length)&&0=d+g?b(this.grid.bDiv)[0].scrollTop=h-(d+g)+l+g:h span:first",k).html(h).attr(l):b("td[role='gridcell']:eq("+a+")",k).html(h).attr(l))}),"local"===g.p.datatype){var r=b.jgrid.stripPref(g.p.idPrefix,e),p=g.p._index[r],q;if(g.p.treeGrid)for(q in g.p.treeReader)g.p.treeReader.hasOwnProperty(q)&& -delete m[g.p.treeReader[q]];void 0!==p&&(g.p.data[p]=b.extend(!0,g.p.data[p],m));m=null}}catch(x){a=!1}a&&("string"===n?b(k).addClass(c):null!==c&&"object"===n&&b(k).css(c),b(g).triggerHandler("jqGridAfterGridComplete"))});return a},addRowData:function(e,f,c,d){c||(c="last");var a=!1,l,g,h,k,n,m,r,p,q="",x,G,U,M,ea,W;f&&(b.isArray(f)?(x=!0,c="last",G=e):(f=[f],x=!1),this.each(function(){var X=f.length;n=!0===this.p.rownumbers?1:0;h=!0===this.p.multiselect?1:0;k=!0===this.p.subGrid?1:0;x||(void 0!== -e?e=String(e):(e=b.jgrid.randId(),!1!==this.p.keyIndex&&(G=this.p.colModel[this.p.keyIndex+h+k+n].name,void 0!==f[0][G]&&(e=f[0][G]))));U=this.p.altclass;for(var O=0,$="",K={},Y=b.isFunction(this.p.afterInsertRow)?!0:!1;O0");h&&(p='',q=this.formatCol(n,1,"",null,e,!0),g[g.length]='"+p+"");k&&(g[g.length]=b(this).jqGrid("addSubGridCell",h+n,1));for(r=h+k+n;r"+p+"";g.unshift(this.constructTr(e,!1,$,K,M,!1)); -g[g.length]="";if(0===this.rows.length)b("table:first",this.grid.bDiv).append(g.join(""));else switch(c){case "last":b(this.rows[this.rows.length-1]).after(g.join(""));m=this.rows.length-1;break;case "first":b(this.rows[0]).after(g.join(""));m=1;break;case "after":if(m=b(this).jqGrid("getGridRowById",d))b(this.rows[m.rowIndex+1]).hasClass("ui-subgrid")?b(this.rows[m.rowIndex+1]).after(g):b(m).after(g.join("")),m=m.rowIndex+1;break;case "before":if(m=b(this).jqGrid("getGridRowById",d))b(m).before(g.join("")), -m=m.rowIndex-1}!0===this.p.subGrid&&b(this).jqGrid("addSubGrid",h+n,m);this.p.records++;this.p.reccount++;b(this).triggerHandler("jqGridAfterInsertRow",[e,M,M]);Y&&this.p.afterInsertRow.call(this,e,M,M);O++;"local"===this.p.datatype&&(K[this.p.localReader.id]=W,this.p._index[W]=this.p.data.length,this.p.data.push(K),K={})}!0!==this.p.altRows||x||("last"===c?1===(this.rows.length-1)%2&&b(this.rows[this.rows.length-1]).addClass(U):b(this.rows).each(function(a){1===a%2?b(this).addClass(U):b(this).removeClass(U)})); -this.updatepager(!0,!0);a=!0}));return a},footerData:function(e,f,c){function d(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0}var a,l=!1,g={},h;void 0==e&&(e="get");"boolean"!==typeof c&&(c=!0);e=e.toLowerCase();this.each(function(){var k=this,n;if(!k.grid||!k.p.footerrow||"set"===e&&d(f))return!1;l=!0;b(this.p.colModel).each(function(d){a=this.name;"set"===e?void 0!==f[a]&&(n=c?k.formatter("",f[a],d,f,"edit"):f[a],h=this.title?{title:b.jgrid.stripHtml(n)}:{},b("tr.footrow td:eq("+d+ -")",k.grid.sDiv).html(n).attr(h),l=!0):"get"===e&&(g[a]=b("tr.footrow td:eq("+d+")",k.grid.sDiv).html())})});return"get"===e?g:l},showHideCol:function(e,f){return this.each(function(){var c=this,d=!1,a=b.jgrid.cell_width?0:c.p.cellLayout,l;if(c.grid){"string"===typeof e&&(e=[e]);f="none"!==f?"":"none";var g=""===f?!0:!1,h=c.p.groupHeader&&("object"===typeof c.p.groupHeader||b.isFunction(c.p.groupHeader));h&&b(c).jqGrid("destroyGroupHeader",!1);b(this.p.colModel).each(function(h){if(-1!==b.inArray(this.name, -e)&&this.hidden===g){if(!0===c.p.frozenColumns&&!0===this.frozen)return!0;b("tr[role=rowheader]",c.grid.hDiv).each(function(){b(this.cells[h]).css("display",f)});b(c.rows).each(function(){b(this).hasClass("jqgroup")||b(this.cells[h]).css("display",f)});c.p.footerrow&&b("tr.footrow td:eq("+h+")",c.grid.sDiv).css("display",f);l=parseInt(this.width,10);c.p.tblwidth="none"===f?c.p.tblwidth-(l+a):c.p.tblwidth+(l+a);this.hidden=!g;d=!0;b(c).triggerHandler("jqGridShowHideCol",[g,this.name,h])}});!0===d&& -(!0!==c.p.shrinkToFit||isNaN(c.p.height)||(c.p.tblwidth+=parseInt(c.p.scrollOffset,10)),b(c).jqGrid("setGridWidth",!0===c.p.shrinkToFit?c.p.tblwidth:c.p.width));h&&b(c).jqGrid("setGroupHeaders",c.p.groupHeader)}})},hideCol:function(e){return this.each(function(){b(this).jqGrid("showHideCol",e,"none")})},showCol:function(e){return this.each(function(){b(this).jqGrid("showHideCol",e,"")})},remapColumns:function(e,f,c){function d(a){var c;c=a.length?b.makeArray(a):b.extend({},a);b.each(e,function(b){a[b]= -c[this]})}function a(a,c){b(">tr"+(c||""),a).each(function(){var a=this,c=b.makeArray(a.cells);b.each(e,function(){var b=c[this];b&&a.appendChild(b)})})}var l=this.get(0);d(l.p.colModel);d(l.p.colNames);d(l.grid.headers);a(b("thead:first",l.grid.hDiv),c&&":not(.ui-jqgrid-labels)");f&&a(b("#"+b.jgrid.jqID(l.p.id)+" tbody:first"),".jqgfirstrow, tr.jqgrow, tr.jqfoot");l.p.footerrow&&a(b("tbody:first",l.grid.sDiv));l.p.remapColumns&&(l.p.remapColumns.length?d(l.p.remapColumns):l.p.remapColumns=b.makeArray(e)); -l.p.lastsort=b.inArray(l.p.lastsort,e);l.p.treeGrid&&(l.p.expColInd=b.inArray(l.p.expColInd,e));b(l).triggerHandler("jqGridRemapColumns",[e,f,c])},setGridWidth:function(e,f){return this.each(function(){if(this.grid){var c=this,d,a=0,l=b.jgrid.cell_width?0:c.p.cellLayout,g,h=0,k=!1,n=c.p.scrollOffset,m,r=0,p;"boolean"!==typeof f&&(f=c.p.shrinkToFit);if(!isNaN(e)){e=parseInt(e,10);c.grid.width=c.p.width=e;b("#gbox_"+b.jgrid.jqID(c.p.id)).css("width",e+"px");b("#gview_"+b.jgrid.jqID(c.p.id)).css("width", -e+"px");b(c.grid.bDiv).css("width",e+"px");b(c.grid.hDiv).css("width",e+"px");c.p.pager&&b(c.p.pager).css("width",e+"px");c.p.toppager&&b(c.p.toppager).css("width",e+"px");!0===c.p.toolbar[0]&&(b(c.grid.uDiv).css("width",e+"px"),"both"===c.p.toolbar[1]&&b(c.grid.ubDiv).css("width",e+"px"));c.p.footerrow&&b(c.grid.sDiv).css("width",e+"px");!1===f&&!0===c.p.forceFit&&(c.p.forceFit=!1);if(!0===f){b.each(c.p.colModel,function(){!1===this.hidden&&(d=this.widthOrg,a+=d+l,this.fixed?r+=d+l:h++)});if(0=== -h)return;c.p.tblwidth=a;m=e-l*h-r;!isNaN(c.p.height)&&(b(c.grid.bDiv)[0].clientHeightd||(this.width=d,a+=d,c.grid.headers[b].width=d,c.grid.headers[b].el.style.width=d+"px",c.p.footerrow&&(c.grid.footers[b].style.width=d+"px"),q&&(c.grid.cols[b].style.width=d+"px"),g=b))});if(!g)return; -p=0;k?e-r-(a+l*h)!==n&&(p=e-r-(a+l*h)-n):1!==Math.abs(e-r-(a+l*h))&&(p=e-r-(a+l*h));c.p.colModel[g].width+=p;c.p.tblwidth=a+p+l*h+r;c.p.tblwidth>e?(k=c.p.tblwidth-parseInt(e,10),c.p.tblwidth=e,d=c.p.colModel[g].width-=k):d=c.p.colModel[g].width;c.grid.headers[g].width=d;c.grid.headers[g].el.style.width=d+"px";q&&(c.grid.cols[g].style.width=d+"px");c.p.footerrow&&(c.grid.footers[g].style.width=d+"px")}c.p.tblwidth&&(b("table:first",c.grid.bDiv).css("width",c.p.tblwidth+"px"),b("table:first",c.grid.hDiv).css("width", -c.p.tblwidth+"px"),c.grid.hDiv.scrollLeft=c.grid.bDiv.scrollLeft,c.p.footerrow&&b("table:first",c.grid.sDiv).css("width",c.p.tblwidth+"px"))}}})},setGridHeight:function(e){return this.each(function(){if(this.grid){var f=b(this.grid.bDiv);f.css({height:e+(isNaN(e)?"":"px")});!0===this.p.frozenColumns&&b("#"+b.jgrid.jqID(this.p.id)+"_frozen").parent().height(f.height()-16);this.p.height=e;this.p.scroll&&this.grid.populateVisible()}})},setCaption:function(e){return this.each(function(){this.p.caption= -e;b("span.ui-jqgrid-title, span.ui-jqgrid-title-rtl",this.grid.cDiv).html(e);b(this.grid.cDiv).show()})},setLabel:function(e,f,c,d){return this.each(function(){var a=-1;if(this.grid&&void 0!==e&&(b(this.p.colModel).each(function(b){if(this.name===e)return a=b,!1}),0<=a)){var l=b("tr.ui-jqgrid-labels th:eq("+a+")",this.grid.hDiv);if(f){var g=b(".s-ico",l);b("[id^=jqgh_]",l).empty().html(f).append(g);this.p.colNames[a]=f}c&&("string"===typeof c?b(l).addClass(c):b(l).css(c));"object"===typeof d&&b(l).attr(d)}})}, -setCell:function(e,f,c,d,a,l){return this.each(function(){var g=-1,h,k;if(this.grid&&(isNaN(f)?b(this.p.colModel).each(function(a){if(this.name===f)return g=a,!1}):g=parseInt(f,10),0<=g&&(h=b(this).jqGrid("getGridRowById",e)))){var n=b("td:eq("+g+")",h);if(""!==c||!0===l)h=this.formatter(e,c,g,h,"edit"),k=this.p.colModel[g].title?{title:b.jgrid.stripHtml(h)}:{},this.p.treeGrid&&0c,e=String(c),f=b.decimalSeparator||".",g;if(a.fmatter.isNumber(b.decimalPlaces)){var h=b.decimalPlaces,e=Math.pow(10,h),e=String(Math.round(c*e)/e);g=e.lastIndexOf(".");if(0g?(e+=f,g=e.length-1):"."!==f&& -(e=e.replace(".",f));e.length-1-g'+c+"
"};a.fn.fmatter.checkbox=function(c,b){var d=a.extend({},b.checkbox),e;void 0!==b.colModel&&void 0!==b.colModel.formatoptions&&(d=a.extend({},d,b.colModel.formatoptions));e=!0===d.disabled?'disabled="disabled"':"";if(a.fmatter.isEmpty(c)||void 0===c)c=a.fn.fmatter.defaultFormat(c,d);c=String(c);c=(c+"").toLowerCase();return'c.search(/(false|f|0|no|n|off|undefined)/i)?" checked='checked' ":"")+' value="'+c+'" offval="no" '+e+"/>"};a.fn.fmatter.link=function(c, -b){var d={target:b.target},e="";void 0!==b.colModel&&void 0!==b.colModel.formatoptions&&(d=a.extend({},d,b.colModel.formatoptions));d.target&&(e="target="+d.target);return a.fmatter.isEmpty(c)?a.fn.fmatter.defaultFormat(c,b):"'+c+""};a.fn.fmatter.showlink=function(c,b){var d={baseLinkUrl:b.baseLinkUrl,showAction:b.showAction,addParam:b.addParam||"",target:b.target,idName:b.idName},e="";void 0!==b.colModel&&void 0!==b.colModel.formatoptions&&(d=a.extend({},d,b.colModel.formatoptions)); -d.target&&(e="target="+d.target);d=d.baseLinkUrl+d.showAction+"?"+d.idName+"="+b.rowId+d.addParam;return a.fmatter.isString(c)||a.fmatter.isNumber(c)?"'+c+"":a.fn.fmatter.defaultFormat(c,b)};a.fn.fmatter.integer=function(c,b){var d=a.extend({},b.integer);void 0!==b.colModel&&void 0!==b.colModel.formatoptions&&(d=a.extend({},d,b.colModel.formatoptions));return a.fmatter.isEmpty(c)?d.defaultValue:a.fmatter.util.NumberFormat(c,d)};a.fn.fmatter.number=function(c,b){var d=a.extend({}, -b.number);void 0!==b.colModel&&void 0!==b.colModel.formatoptions&&(d=a.extend({},d,b.colModel.formatoptions));return a.fmatter.isEmpty(c)?d.defaultValue:a.fmatter.util.NumberFormat(c,d)};a.fn.fmatter.currency=function(c,b){var d=a.extend({},b.currency);void 0!==b.colModel&&void 0!==b.colModel.formatoptions&&(d=a.extend({},d,b.colModel.formatoptions));return a.fmatter.isEmpty(c)?d.defaultValue:a.fmatter.util.NumberFormat(c,d)};a.fn.fmatter.date=function(c,b,d,e){d=a.extend({},b.date);void 0!==b.colModel&& -void 0!==b.colModel.formatoptions&&(d=a.extend({},d,b.colModel.formatoptions));return d.reformatAfterEdit||"edit"!==e?a.fmatter.isEmpty(c)?a.fn.fmatter.defaultFormat(c,b):a.jgrid.parseDate(d.srcformat,c,d.newformat,d):a.fn.fmatter.defaultFormat(c,b)};a.fn.fmatter.select=function(c,b){c=String(c);var d=!1,e=[],f,g;void 0!==b.colModel.formatoptions?(d=b.colModel.formatoptions.value,f=void 0===b.colModel.formatoptions.separator?":":b.colModel.formatoptions.separator,g=void 0===b.colModel.formatoptions.delimiter? -";":b.colModel.formatoptions.delimiter):void 0!==b.colModel.editoptions&&(d=b.colModel.editoptions.value,f=void 0===b.colModel.editoptions.separator?":":b.colModel.editoptions.separator,g=void 0===b.colModel.editoptions.delimiter?";":b.colModel.editoptions.delimiter);if(d){var h=!0===b.colModel.editoptions.multiple?!0:!1,l=[];h&&(l=c.split(","),l=a.map(l,function(b){return a.trim(b)}));if(a.fmatter.isString(d)){var k=d.split(g),m=0,n;for(n=0;n div",e):a(this).parent(),k={extraparam:{}},m=function(b){a.isFunction(k.afterRestore)&&k.afterRestore.call(f,b);l.find("div.ui-inline-edit,div.ui-inline-del").show();l.find("div.ui-inline-save,div.ui-inline-cancel").hide()};void 0!==h.formatoptions&&(k=a.extend(k,h.formatoptions));void 0!==g.editOptions&&(k.editOptions=g.editOptions);void 0!==g.delOptions&&(k.delOptions=g.delOptions);b.hasClass("jqgrid-new-row")&&(k.extraparam[g.prmNames.oper]= -g.prmNames.addoper);b={keys:k.keys,oneditfunc:k.onEdit,successfunc:k.onSuccess,url:k.url,extraparam:k.extraparam,aftersavefunc:function(b,c){a.isFunction(k.afterSave)&&k.afterSave.call(f,b,c);l.find("div.ui-inline-edit,div.ui-inline-del").show();l.find("div.ui-inline-save,div.ui-inline-cancel").hide()},errorfunc:k.onError,afterrestorefunc:m,restoreAfterError:k.restoreAfterError,mtype:k.mtype};switch(c){case "edit":e.jqGrid("editRow",d,b);l.find("div.ui-inline-edit,div.ui-inline-del").hide();l.find("div.ui-inline-save,div.ui-inline-cancel").show(); -e.triggerHandler("jqGridAfterGridComplete");break;case "save":e.jqGrid("saveRow",d,b)&&(l.find("div.ui-inline-edit,div.ui-inline-del").show(),l.find("div.ui-inline-save,div.ui-inline-cancel").hide(),e.triggerHandler("jqGridAfterGridComplete"));break;case "cancel":e.jqGrid("restoreRow",d,m);l.find("div.ui-inline-edit,div.ui-inline-del").show();l.find("div.ui-inline-save,div.ui-inline-cancel").hide();e.triggerHandler("jqGridAfterGridComplete");break;case "del":e.jqGrid("delGridRow",d,k.delOptions); -break;case "formedit":e.jqGrid("setSelection",d),e.jqGrid("editGridRow",d,k.editOptions)}};a.fn.fmatter.actions=function(c,b){var d={keys:!1,editbutton:!0,delbutton:!0,editformbutton:!1},e=b.rowId,f="";void 0!==b.colModel.formatoptions&&(d=a.extend(d,b.colModel.formatoptions));if(void 0===e||a.fmatter.isEmpty(e))return"";d.editformbutton?f+="
":d.editbutton&&(f+="
");d.delbutton&&(f+="
");f+="";f+="";return"
"+f+"
"};a.unformat=function(c, -b,d,e){var f,g=b.colModel.formatter,h=b.colModel.formatoptions||{},l=/([\.\*\_\'\(\)\{\}\+\?\\])/g,k=b.colModel.unformat||a.fn.fmatter[g]&&a.fn.fmatter[g].unformat;if(void 0!==k&&a.isFunction(k))f=k.call(this,a(c).text(),b,c);else if(void 0!==g&&a.fmatter.isString(g))switch(f=a.jgrid.formatter||{},g){case "integer":h=a.extend({},f.integer,h);b=h.thousandsSeparator.replace(l,"\\$1");b=RegExp(b,"g");f=a(c).text().replace(b,"");break;case "number":h=a.extend({},f.number,h);b=h.thousandsSeparator.replace(l, -"\\$1");b=RegExp(b,"g");f=a(c).text().replace(b,"").replace(h.decimalSeparator,".");break;case "currency":h=a.extend({},f.currency,h);b=h.thousandsSeparator.replace(l,"\\$1");b=RegExp(b,"g");f=a(c).text();h.prefix&&h.prefix.length&&(f=f.substr(h.prefix.length));h.suffix&&h.suffix.length&&(f=f.substr(0,f.length-h.suffix.length));f=f.replace(b,"").replace(h.decimalSeparator,".");break;case "checkbox":h=b.colModel.editoptions?b.colModel.editoptions.value.split(":"):["Yes","No"];f=a("input",c).is(":checked")? -h[0]:h[1];break;case "select":f=a.unformat.select(c,b,d,e);break;case "actions":return"";default:f=a(c).text()}return void 0!==f?f:!0===e?a(c).text():a.jgrid.htmlDecode(a(c).html())};a.unformat.select=function(c,b,d,e){d=[];c=a(c).text();if(!0===e)return c;e=a.extend({},void 0!==b.colModel.formatoptions?b.colModel.formatoptions:b.colModel.editoptions);b=void 0===e.separator?":":e.separator;var f=void 0===e.delimiter?";":e.delimiter;if(e.value){var g=e.value;e=!0===e.multiple?!0:!1;var h=[];e&&(h= -c.split(","),h=a.map(h,function(b){return a.trim(b)}));if(a.fmatter.isString(g)){var l=g.split(f),k=0,m;for(m=0;m",ge:">=",bw:"^",bn:"!^","in":"=",ni:"!=",ew:"|",en:"!@",cn:"~",nc:"!~",nu:"#",nn:"!#"}},a.jgrid.search,b||{});return this.each(function(){var c=this;if(!this.ftoolbar){var d=function(){var d={},f=0,g,m,e={},q;a.each(c.p.colModel,function(){var l=a("#gs_"+a.jgrid.jqID(this.name),!0===this.frozen&&!0===c.p.frozenColumns?c.grid.fhDiv:c.grid.hDiv);m=this.index|| -this.name;q=b.searchOperators?l.parent().prev().children("a").attr("soper")||b.defaultSearch:this.searchoptions&&this.searchoptions.sopt?this.searchoptions.sopt[0]:"select"===this.stype?"eq":b.defaultSearch;if((g="custom"===this.stype&&a.isFunction(this.searchoptions.custom_value)&&0';g=a(e).attr("soper");var k,h=[],q,p=0,l=a(e).attr("colname");for(k=c.p.colModel.length;p
'+b.operands[b.odata[q].oper]+""+b.odata[q].text+"
");f+="";a("body").append(f);a("#sopt_menu").addClass("ui-menu ui-widget ui-widget-content ui-corner-all");a("#sopt_menu > li > a").hover(function(){a(this).addClass("ui-state-hover")}, -function(){a(this).removeClass("ui-state-hover")}).click(function(f){f=a(this).attr("value");var g=a(this).attr("oper");a(c).triggerHandler("jqGridToolbarSelectOper",[f,g,e]);a("#sopt_menu").hide();a(e).text(g).attr("soper",f);!0===b.autosearch&&(g=a(e).parent().next().children()[0],(a(g).val()||"nu"===f||"nn"===f)&&d())})},k=a(""),e;a.each(c.p.colModel,function(h){var f=this,g,m;m="";var x="=",q,p=a(""),l=a("
"),n=a("
");!0===this.hidden&&a(p).css("display","none");this.search=!1===this.search?!1:!0;void 0===this.stype&&(this.stype="text");g=a.extend({},this.searchoptions||{});if(this.search){if(b.searchOperators){m=g.sopt?g.sopt[0]: -"select"===f.stype?"eq":b.defaultSearch;for(q=0;q"+x+""}a("td:eq(0)",n).attr("colindex",h).append(m);void 0===g.clearSearch&&(g.clearSearch=!0);g.clearSearch?(m=b.resetTitle||"Clear Search Value",a("td:eq(2)",n).append(""+ -b.resetIcon+"")):a("td:eq(2)",n).hide();switch(this.stype){case "select":if(m=this.surl||g.dataUrl)a(l).append(n),a.ajax(a.extend({url:m,dataType:"html",success:function(e){void 0!==g.buildSelect?(e=g.buildSelect(e))&&a("td:eq(1)",n).append(e):a("td:eq(1)",n).append(e);void 0!==g.defaultValue&&a("select",l).val(g.defaultValue);a("select",l).attr({name:f.index||f.name,id:"gs_"+f.name});g.attr&&a("select",l).attr(g.attr);a("select",l).css({width:"100%"});a.jgrid.bindEv.call(c,a("select",l)[0],g); -!0===b.autosearch&&a("select",l).change(function(){d();return!1});e=null}},a.jgrid.ajaxOptions,c.p.ajaxSelectOptions||{}));else{var r,w,u;f.searchoptions?(r=void 0===f.searchoptions.value?"":f.searchoptions.value,w=void 0===f.searchoptions.separator?":":f.searchoptions.separator,u=void 0===f.searchoptions.delimiter?";":f.searchoptions.delimiter):f.editoptions&&(r=void 0===f.editoptions.value?"":f.editoptions.value,w=void 0===f.editoptions.separator?":":f.editoptions.separator,u=void 0===f.editoptions.delimiter? -";":f.editoptions.delimiter);if(r){var t=document.createElement("select");t.style.width="100%";a(t).attr({name:f.index||f.name,id:"gs_"+f.name});var v;if("string"===typeof r)for(m=r.split(u),v=0;v");a(l).append(n);g.attr&&a("input",l).attr(g.attr);a.jgrid.bindEv.call(c,a("input",l)[0],g);!0===b.autosearch&&(b.searchOnEnter?a("input",l).keypress(function(a){return 13=== -(a.charCode||a.keyCode||0)?(d(),!1):this}):a("input",l).keydown(function(a){switch(a.which){case 13:return!1;case 9:case 16:case 37:case 38:case 39:case 40:case 27:break;default:e&&clearTimeout(e),e=setTimeout(function(){d()},500)}}));break;case "custom":a("td:eq(1)",n).append("");a(l).append(n);try{if(a.isFunction(g.custom_element))if(t=g.custom_element.call(c,void 0!==g.defaultValue?g.defaultValue:"",g))t=a(t).addClass("customelement"), -a(l).find(">span").append(t);else throw"e2";else throw"e1";}catch(y){"e1"===y&&a.jgrid.info_dialog(a.jgrid.errors.errcap,"function 'custom_element' "+a.jgrid.edit.msg.nodefined,a.jgrid.edit.bClose),"e2"===y?a.jgrid.info_dialog(a.jgrid.errors.errcap,"function 'custom_element' "+a.jgrid.edit.msg.novalue,a.jgrid.edit.bClose):a.jgrid.info_dialog(a.jgrid.errors.errcap,"string"===typeof y?y:y.message,a.jgrid.edit.bClose)}}}a(p).append(l);a(k).append(p);b.searchOperators||a("td:eq(0)",n).hide()});a("table thead", -c.grid.hDiv).append(k);b.searchOperators&&(a(".soptclass",k).click(function(b){var c=a(this).offset();h(this,c.left,c.top);b.stopPropagation()}),a("body").on("click",function(b){"soptclass"!==b.target.className&&a("#sopt_menu").hide()}));a(".clearsearchclass",k).click(function(e){e=a(this).parents("tr:first");var f=parseInt(a("td.ui-search-oper",e).attr("colindex"),10),g=a.extend({},c.p.colModel[f].searchoptions||{}),g=g.defaultValue?g.defaultValue:"";"select"===c.p.colModel[f].stype?g?a("td.ui-search-input select", -e).val(g):a("td.ui-search-input select",e)[0].selectedIndex=0:a("td.ui-search-input input",e).val(g);!0===b.autosearch&&d()});this.ftoolbar=!0;this.triggerToolbar=d;this.clearToolbar=function(d){var f={},g=0,e;d="boolean"!==typeof d?!0:d;a.each(c.p.colModel,function(){var b,d=a("#gs_"+a.jgrid.jqID(this.name),!0===this.frozen&&!0===c.p.frozenColumns?c.grid.fhDiv:c.grid.hDiv);this.searchoptions&&void 0!==this.searchoptions.defaultValue&&(b=this.searchoptions.defaultValue);e=this.index||this.name;switch(this.stype){case "select":d.find("option").each(function(c){0=== -c&&(this.selected=!0);if(a(this).val()===b)return this.selected=!0,!1});if(void 0!==b)f[e]=b,g++;else try{delete c.p.postData[e]}catch(h){}break;case "text":d.val(b||"");if(void 0!==b)f[e]=b,g++;else try{delete c.p.postData[e]}catch(k){}break;case "custom":a.isFunction(this.searchoptions.custom_value)&&0",{role:"rowheader"}).addClass("ui-jqgrid-labels"); -k=d.headers;d=0;for(h=k.length;d",{role:"row","aria-hidden":"true"}).addClass("jqg-first-row-header").css("height","auto"):n.empty();var r,w=function(a,b){var c=b.length,d;for(d=0;d",{role:"rowheader"}).addClass("ui-jqgrid-labels jqg-third-row-header");for(c=0;c",{role:"gridcell"}).css(e).addClass("ui-first-th-"+this.p.direction).appendTo(n),s.style.width="",e=w(d.name,b.groupHeaders),0<=e){e=b.groupHeaders[e];h=e.numberOfColumns;g=e.titleText;for(e=d=0;e").attr({role:"columnheader"}).addClass("ui-state-default ui-th-column-header ui-th-"+ -this.p.direction).css({height:"22px","border-top":"0 none"}).html(g);0",{role:"columnheader"}).addClass("ui-state-default ui-th-column-header ui-th-"+this.p.direction).css({display:d.hidden?"none":"","border-top":"0 none"}).insertBefore(f),k.append(s)):(k.append(s),h--);m=a(this).children("thead");m.prepend(n);k.insertAfter(l); -p.append(m);b.useColSpanStyle&&(p.find("span.ui-jqgrid-resize").each(function(){var b=a(this).parent();b.is(":visible")&&(this.style.cssText="height: "+b.height()+"px !important; cursor: col-resize;")}),p.find("div.ui-jqgrid-sortable").each(function(){var b=a(this),c=b.parent();c.is(":visible")&&c.is(":has(span.ui-jqgrid-resize)")&&b.css("top",(c.height()-b.outerHeight())/2+"px")}));r=m.find("tr.jqg-first-row-header");a(this).bind("jqGridResizeStop.setGroupHeaders",function(a,b,c){r.find("th").eq(c).width(b)})})}, -setFrozenColumns:function(){return this.each(function(){if(this.grid){var b=this,c=b.p.colModel,d=0,h=c.length,k=-1,e=!1;if(!0!==b.p.subGrid&&!0!==b.p.treeGrid&&!0!==b.p.cellEdit&&!b.p.sortable&&!b.p.scroll){b.p.rownumbers&&d++;for(b.p.multiselect&&d++;d');b.grid.fbDiv=a('
');a("#gview_"+a.jgrid.jqID(b.p.id)).append(b.grid.fhDiv);c=a(".ui-jqgrid-htable","#gview_"+a.jgrid.jqID(b.p.id)).clone(!0);if(b.p.groupHeader){a("tr.jqg-first-row-header, tr.jqg-third-row-header", -c).each(function(){a("th:gt("+k+")",this).remove()});var s=-1,f=-1,g,m;a("tr.jqg-second-row-header th",c).each(function(){g=parseInt(a(this).attr("colspan"),10);if(m=parseInt(a(this).attr("rowspan"),10))s++,f++;g&&(s+=g,f++);if(s===k)return!1});s!==k&&(f=k);a("tr.jqg-second-row-header",c).each(function(){a("th:gt("+f+")",this).remove()})}else a("tr",c).each(function(){a("th:gt("+k+")",this).remove()});a(c).width(1);a(b.grid.fhDiv).append(c).mousemove(function(a){if(b.grid.resizing)return b.grid.dragMove(a), -!1});a(b).bind("jqGridResizeStop.setFrozenColumns",function(c,d,e){c=a(".ui-jqgrid-htable",b.grid.fhDiv);a("th:eq("+e+")",c).width(d);c=a(".ui-jqgrid-btable",b.grid.fbDiv);a("tr:first td:eq("+e+")",c).width(d)});a(b).bind("jqGridSortCol.setFrozenColumns",function(c,d,e){c=a("tr.ui-jqgrid-labels:last th:eq("+b.p.lastsort+")",b.grid.fhDiv);d=a("tr.ui-jqgrid-labels:last th:eq("+e+")",b.grid.fhDiv);a("span.ui-grid-ico-sort",c).addClass("ui-state-disabled");a(c).attr("aria-selected","false");a("span.ui-icon-"+ -b.p.sortorder,d).removeClass("ui-state-disabled");a(d).attr("aria-selected","true");b.p.viewsortcols[0]||b.p.lastsort===e||(a("span.s-ico",c).hide(),a("span.s-ico",d).show())});a("#gview_"+a.jgrid.jqID(b.p.id)).append(b.grid.fbDiv);a(b.grid.bDiv).scroll(function(){a(b.grid.fbDiv).scrollTop(a(this).scrollTop())});!0===b.p.hoverrows&&a("#"+a.jgrid.jqID(b.p.id)).unbind("mouseover").unbind("mouseout");a(b).bind("jqGridAfterGridComplete.setFrozenColumns",function(){a("#"+a.jgrid.jqID(b.p.id)+"_frozen").remove(); -a(b.grid.fbDiv).height(a(b.grid.bDiv).height()-16);var c=a("#"+a.jgrid.jqID(b.p.id)).clone(!0);a("tr[role=row]",c).each(function(){a("td[role=gridcell]:gt("+k+")",this).remove()});a(c).width(1).attr("id",b.p.id+"_frozen");a(b.grid.fbDiv).append(c);!0===b.p.hoverrows&&(a("tr.jqgrow",c).hover(function(){a(this).addClass("ui-state-hover");a("#"+a.jgrid.jqID(this.id),"#"+a.jgrid.jqID(b.p.id)).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover");a("#"+a.jgrid.jqID(this.id),"#"+ -a.jgrid.jqID(b.p.id)).removeClass("ui-state-hover")}),a("tr.jqgrow","#"+a.jgrid.jqID(b.p.id)).hover(function(){a(this).addClass("ui-state-hover");a("#"+a.jgrid.jqID(this.id),"#"+a.jgrid.jqID(b.p.id)+"_frozen").addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover");a("#"+a.jgrid.jqID(this.id),"#"+a.jgrid.jqID(b.p.id)+"_frozen").removeClass("ui-state-hover")}));c=null});b.grid.hDiv.loading||a(b).triggerHandler("jqGridAfterGridComplete");b.p.frozenColumns=!0}}}})},destroyFrozenColumns:function(){return this.each(function(){if(this.grid&& -!0===this.p.frozenColumns){a(this.grid.fhDiv).remove();a(this.grid.fbDiv).remove();this.grid.fhDiv=null;this.grid.fbDiv=null;a(this).unbind(".setFrozenColumns");if(!0===this.p.hoverrows){var b;a("#"+a.jgrid.jqID(this.p.id)).bind("mouseover",function(c){b=a(c.target).closest("tr.jqgrow");"ui-subgrid"!==a(b).attr("class")&&a(b).addClass("ui-state-hover")}).bind("mouseout",function(c){b=a(c.target).closest("tr.jqgrow");a(b).removeClass("ui-state-hover")})}this.p.frozenColumns=!1}})}})})(jQuery); -(function(a){a.extend(a.jgrid,{showModal:function(a){a.w.show()},closeModal:function(a){a.w.hide().attr("aria-hidden","true");a.o&&a.o.remove()},hideModal:function(d,b){b=a.extend({jqm:!0,gb:""},b||{});if(b.onClose){var c=b.gb&&"string"===typeof b.gb&&"#gbox_"===b.gb.substr(0,6)?b.onClose.call(a("#"+b.gb.substr(6))[0],d):b.onClose(d);if("boolean"===typeof c&&!c)return}if(a.fn.jqm&&!0===b.jqm)a(d).attr("aria-hidden","true").jqmHide();else{if(""!==b.gb)try{a(".jqgrid-overlay:first",b.gb).hide()}catch(g){}a(d).hide().attr("aria-hidden", -"true")}},findPos:function(a){var b=0,c=0;if(a.offsetParent){do b+=a.offsetLeft,c+=a.offsetTop;while(a=a.offsetParent)}return[b,c]},createModal:function(d,b,c,g,e,h,f){c=a.extend(!0,{},a.jgrid.jqModal||{},c);var k=document.createElement("div"),l,m=this;f=a.extend({},f||{});l="rtl"===a(c.gbox).attr("dir")?!0:!1;k.className="ui-widget ui-widget-content ui-corner-all ui-jqdialog";k.id=d.themodal;var n=document.createElement("div");n.className="ui-jqdialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix"; -n.id=d.modalhead;a(n).append(""+c.caption+"");var q=a("").hover(function(){q.addClass("ui-state-hover")},function(){q.removeClass("ui-state-hover")}).append("");a(n).append(q);l?(k.dir="rtl",a(".ui-jqdialog-title",n).css("float","right"),a(".ui-jqdialog-titlebar-close",n).css("left","0.3em")):(k.dir="ltr",a(".ui-jqdialog-title",n).css("float","left"),a(".ui-jqdialog-titlebar-close", -n).css("right","0.3em"));var p=document.createElement("div");a(p).addClass("ui-jqdialog-content ui-widget-content").attr("id",d.modalcontent);a(p).append(b);k.appendChild(p);a(k).prepend(n);!0===h?a("body").append(k):"string"===typeof h?a(h).append(k):a(k).insertBefore(g);a(k).css(f);void 0===c.jqModal&&(c.jqModal=!0);b={};if(a.fn.jqm&&!0===c.jqModal)0===c.left&&0===c.top&&c.overlay&&(f=[],f=a.jgrid.findPos(e),c.left=f[0]+4,c.top=f[1]+4),b.top=c.top+"px",b.left=c.left;else if(0!==c.left||0!==c.top)b.left= -c.left,b.top=c.top+"px";a("a.ui-jqdialog-titlebar-close",n).click(function(){var b=a("#"+a.jgrid.jqID(d.themodal)).data("onClose")||c.onClose,e=a("#"+a.jgrid.jqID(d.themodal)).data("gbox")||c.gbox;m.hideModal("#"+a.jgrid.jqID(d.themodal),{gb:e,jqm:c.jqModal,onClose:b});return!1});0!==c.width&&c.width||(c.width=300);0!==c.height&&c.height||(c.height=200);c.zIndex||(g=a(g).parents("*[role=dialog]").filter(":first").css("z-index"),c.zIndex=g?parseInt(g,10)+2:950);g=0;l&&b.left&&!h&&(g=a(c.gbox).width()- -(isNaN(c.width)?0:parseInt(c.width,10))-8,b.left=parseInt(b.left,10)+parseInt(g,10));b.left&&(b.left+="px");a(k).css(a.extend({width:isNaN(c.width)?"auto":c.width+"px",height:isNaN(c.height)?"auto":c.height+"px",zIndex:c.zIndex,overflow:"hidden"},b)).attr({tabIndex:"-1",role:"dialog","aria-labelledby":d.modalhead,"aria-hidden":"true"});void 0===c.drag&&(c.drag=!0);void 0===c.resize&&(c.resize=!0);if(c.drag)if(a(n).css("cursor","move"),a.fn.jqDrag)a(k).jqDrag(n);else try{a(k).draggable({handle:a("#"+ -a.jgrid.jqID(n.id))})}catch(r){}if(c.resize)if(a.fn.jqResize)a(k).append("
"),a("#"+a.jgrid.jqID(d.themodal)).jqResize(".jqResize",d.scrollelm?"#"+a.jgrid.jqID(d.scrollelm):!1);else try{a(k).resizable({handles:"se, sw",alsoResize:d.scrollelm?"#"+a.jgrid.jqID(d.scrollelm):!1})}catch(s){}!0===c.closeOnEscape&&a(k).keydown(function(b){27==b.which&&(b=a("#"+a.jgrid.jqID(d.themodal)).data("onClose")||c.onClose, -m.hideModal("#"+a.jgrid.jqID(d.themodal),{gb:c.gbox,jqm:c.jqModal,onClose:b}))})},viewModal:function(d,b){b=a.extend({toTop:!0,overlay:10,modal:!1,overlayClass:"ui-widget-overlay",onShow:a.jgrid.showModal,onHide:a.jgrid.closeModal,gbox:"",jqm:!0,jqM:!0},b||{});if(a.fn.jqm&&!0===b.jqm)b.jqM?a(d).attr("aria-hidden","false").jqm(b).jqmShow():a(d).attr("aria-hidden","false").jqmShow();else{""!==b.gbox&&(a(".jqgrid-overlay:first",b.gbox).show(),a(d).data("gbox",b.gbox));a(d).show().attr("aria-hidden", -"false");try{a(":input:visible",d)[0].focus()}catch(c){}}},info_dialog:function(d,b,c,g){var e={width:290,height:"auto",dataheight:"auto",drag:!0,resize:!1,left:250,top:170,zIndex:1E3,jqModal:!0,modal:!1,closeOnEscape:!0,align:"center",buttonalign:"center",buttons:[]};a.extend(!0,e,a.jgrid.jqModal||{},{caption:""+d+""},g||{});var h=e.jqModal,f=this;a.fn.jqm&&!h&&(h=!1);d="";if(0"+e.buttons[g].text+"";g=isNaN(e.dataheight)?e.dataheight:e.dataheight+"px";b="
"+("
"+b+"
");b+=c?"
"+ -c+""+d+"
":""!==d?"
"+d+"
":"";b+="
";try{"false"===a("#info_dialog").attr("aria-hidden")&&a.jgrid.hideModal("#info_dialog",{jqm:h}),a("#info_dialog").remove()}catch(k){}a.jgrid.createModal({themodal:"info_dialog",modalhead:"info_head",modalcontent:"info_content",scrollelm:"infocnt"},b,e,"","",!0);d&&a.each(e.buttons, -function(b){a("#"+a.jgrid.jqID(this.id),"#info_id").bind("click",function(){e.buttons[b].onClick.call(a("#info_dialog"));return!1})});a("#closedialog","#info_id").click(function(){f.hideModal("#info_dialog",{jqm:h,onClose:a("#info_dialog").data("onClose")||e.onClose,gb:a("#info_dialog").data("gbox")||e.gbox});return!1});a(".fm-button","#info_dialog").hover(function(){a(this).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover")});a.isFunction(e.beforeOpen)&&e.beforeOpen();a.jgrid.viewModal("#info_dialog", -{onHide:function(a){a.w.hide().remove();a.o&&a.o.remove()},modal:e.modal,jqm:h});a.isFunction(e.afterOpen)&&e.afterOpen();try{a("#info_dialog").focus()}catch(l){}},bindEv:function(d,b){a.isFunction(b.dataInit)&&b.dataInit.call(this,d,b);b.dataEvents&&a.each(b.dataEvents,function(){void 0!==this.data?a(d).bind(this.type,this.data,this.fn):a(d).bind(this.type,this.fn)})},createEl:function(d,b,c,g,e){function h(b,d,c){var e="dataInit dataEvents dataUrl buildSelect sopt searchhidden defaultValue attr custom_element custom_value".split(" "); -void 0!==c&&a.isArray(c)&&a.merge(e,c);a.each(d,function(d,c){-1===a.inArray(d,e)&&a(b).attr(d,c)});d.hasOwnProperty("id")||a(b).attr("id",a.jgrid.randId())}var f="",k=this;switch(d){case "textarea":f=document.createElement("textarea");g?b.cols||a(f).css({width:"98%"}):b.cols||(b.cols=20);b.rows||(b.rows=2);if(" "===c||" "===c||1===c.length&&160===c.charCodeAt(0))c="";f.value=c;h(f,b);a(f).attr({role:"textbox",multiline:"true"});break;case "checkbox":f=document.createElement("input");f.type= -"checkbox";b.value?(d=b.value.split(":"),c===d[0]&&(f.checked=!0,f.defaultChecked=!0),f.value=d[0],a(f).attr("offval",d[1])):(d=(c+"").toLowerCase(),0>d.search(/(false|f|0|no|n|off|undefined)/i)&&""!==d?(f.checked=!0,f.defaultChecked=!0,f.value=c):f.value="on",a(f).attr("offval","off"));h(f,b,["value"]);a(f).attr("role","checkbox");break;case "select":f=document.createElement("select");f.setAttribute("role","select");g=[];!0===b.multiple?(d=!0,f.multiple="multiple",a(f).attr("aria-multiselectable", -"true")):d=!1;if(void 0!==b.dataUrl){d=b.name?String(b.id).substring(0,String(b.id).length-String(b.name).length-1):String(b.id);var l=b.postData||e.postData;k.p&&k.p.idPrefix&&(d=a.jgrid.stripPref(k.p.idPrefix,d));a.ajax(a.extend({url:a.isFunction(b.dataUrl)?b.dataUrl.call(k,d,c,String(b.name)):b.dataUrl,type:"GET",dataType:"html",data:a.isFunction(l)?l.call(k,d,c,String(b.name)):l,context:{elem:f,options:b,vl:c},success:function(b){var d=[],c=this.elem,e=this.vl,f=a.extend({},this.options),g=!0=== -f.multiple;b=a.isFunction(f.buildSelect)?f.buildSelect.call(k,b):b;"string"===typeof b&&(b=a(a.trim(b)).html());b&&(a(c).append(b),h(c,f,l?["postData"]:void 0),void 0===f.size&&(f.size=g?3:1),g?(d=e.split(","),d=a.map(d,function(b){return a.trim(b)})):d[0]=a.trim(e),setTimeout(function(){a("option",c).each(function(b){0===b&&c.multiple&&(this.selected=!1);a(this).attr("role","option");if(-1l.length||1>c[a[f]]||12l.length)&&!(h=1>c[a[g]])&&!(h=31(0!==e%4||0===e%100&&0!==e%400?28:29);h=h||c[a[g]]>k[c[a[f]]]}return h?!1:!0},isEmpty:function(a){return a.match(/^\s+$/)||""===a?!0:!1},checkTime:function(d){var b=/^(\d{1,2}):(\d{2})([apAP][Mm])?$/;if(!a.jgrid.isEmpty(d))if(d=d.match(b)){if(d[3]){if(1>d[1]||12parseFloat(e.maxValue))return[!1,h+": "+a.jgrid.edit.msg.maxValue+" "+e.maxValue,""];if(!(!0!==e.email||!1===c&&a.jgrid.isEmpty(d)||(g=/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i, -g.test(d))))return[!1,h+": "+a.jgrid.edit.msg.email,""];if(!(!0!==e.integer||!1===c&&a.jgrid.isEmpty(d)||!isNaN(d)&&0===d%1&&-1===d.indexOf(".")))return[!1,h+": "+a.jgrid.edit.msg.integer,""];if(!(!0!==e.date||!1===c&&a.jgrid.isEmpty(d)||(f[b].formatoptions&&f[b].formatoptions.newformat?(f=f[b].formatoptions.newformat,a.jgrid.formatter.date.masks.hasOwnProperty(f)&&(f=a.jgrid.formatter.date.masks[f])):f=f[b].datefmt||"Y-m-d",a.jgrid.checkDate(f,d))))return[!1,h+": "+a.jgrid.edit.msg.date+" - "+f, -""];if(!0===e.time&&!(!1===c&&a.jgrid.isEmpty(d)||a.jgrid.checkTime(d)))return[!1,h+": "+a.jgrid.edit.msg.date+" - hh:mm (am/pm)",""];if(!(!0!==e.url||!1===c&&a.jgrid.isEmpty(d)||(g=/^(((https?)|(ftp)):\/\/([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\\/+@&#;`~=%!]*)(\.\w{2,})?)*\/?)/i,g.test(d))))return[!1,h+": "+a.jgrid.edit.msg.url,""];if(!0===e.custom&&(!1!==c||!a.jgrid.isEmpty(d)))return a.isFunction(e.custom_func)?(d=e.custom_func.call(this,d,h,b),a.isArray(d)?d:[!1,a.jgrid.edit.msg.customarray, -""]):[!1,a.jgrid.edit.msg.customfcheck,""]}return[!0,"",""]}})})(jQuery); -(function(a){var b={};a.jgrid.extend({searchGrid:function(b){b=a.extend(!0,{recreateFilter:!1,drag:!0,sField:"searchField",sValue:"searchString",sOper:"searchOper",sFilter:"filters",loadDefaults:!0,beforeShowSearch:null,afterShowSearch:null,onInitializeSearch:null,afterRedraw:null,afterChange:null,closeAfterSearch:!1,closeAfterReset:!1,closeOnEscape:!1,searchOnEnter:!1,multipleSearch:!1,multipleGroup:!1,top:0,left:0,jqModal:!0,modal:!1,resize:!0,width:450,height:"auto",dataheight:"auto",showQuery:!1, -errorcheck:!0,sopt:null,stringResult:void 0,onClose:null,onSearch:null,onReset:null,toTop:!0,overlay:30,columns:[],tmplNames:null,tmplFilters:null,tmplLabel:" Template: ",showOnLoad:!1,layer:null,operands:{eq:"=",ne:"<>",lt:"<",le:"<=",gt:">",ge:">=",bw:"LIKE",bn:"NOT LIKE","in":"IN",ni:"NOT IN",ew:"LIKE",en:"NOT LIKE",cn:"LIKE",nc:"NOT LIKE",nu:"IS NULL",nn:"ISNOT NULL"}},a.jgrid.search,b||{});return this.each(function(){function c(c){w=a(e).triggerHandler("jqGridFilterBeforeShow",[c]);void 0=== -w&&(w=!0);w&&a.isFunction(b.beforeShowSearch)&&(w=b.beforeShowSearch.call(e,c));w&&(a.jgrid.viewModal("#"+a.jgrid.jqID(s.themodal),{gbox:"#gbox_"+a.jgrid.jqID(h),jqm:b.jqModal,modal:b.modal,overlay:b.overlay,toTop:b.toTop}),a(e).triggerHandler("jqGridFilterAfterShow",[c]),a.isFunction(b.afterShowSearch)&&b.afterShowSearch.call(e,c))}var e=this;if(e.grid){var h="fbox_"+e.p.id,w=!0,t=!0,s={themodal:"searchmod"+h,modalhead:"searchhd"+h,modalcontent:"searchcnt"+h,scrollelm:h},r=e.p.postData[b.sFilter]; -"string"===typeof r&&(r=a.jgrid.parse(r));!0===b.recreateFilter&&a("#"+a.jgrid.jqID(s.themodal)).remove();if(void 0!==a("#"+a.jgrid.jqID(s.themodal))[0])c(a("#fbox_"+a.jgrid.jqID(+e.p.id)));else{var f=a("
").insertBefore("#gview_"+a.jgrid.jqID(e.p.id)),k="left",u="";"rtl"===e.p.direction&&(k="right",u=" style='text-align:left'",f.attr("dir","rtl"));var x=a.extend([],e.p.colModel),d=""+ -b.Find+"",v=""+b.Reset+"",g="",m="",p,q=!1,y=-1;b.showQuery&&(g="Query");b.columns.length?(x=b.columns,y=0,p=x[0].index||x[0].name):a.each(x,function(a,b){b.label||(b.label=e.p.colNames[a]);if(!q){var c= -void 0===b.search?!0:b.search,d=!0===b.hidden;if(b.searchoptions&&!0===b.searchoptions.searchhidden&&c||c&&!d)q=!0,p=b.index||b.name,y=a}});if(!r&&p||!1===b.multipleSearch){var D="eq";0<=y&&x[y].searchoptions&&x[y].searchoptions.sopt?D=x[y].searchoptions.sopt[0]:b.sopt&&b.sopt.length&&(D=b.sopt[0]);r={groupOp:"AND",rules:[{field:p,op:D,data:""}]}}q=!1;b.tmplNames&&b.tmplNames.length&&(q=!0,m=b.tmplLabel,m+="");k="

"+v+m+""+g+d+"
";h=a.jgrid.jqID(h);a("#"+h).jqFilter({columns:x,filter:b.loadDefaults?r:null,showQuery:b.showQuery,errorcheck:b.errorcheck,sopt:b.sopt, -groupButton:b.multipleGroup,ruleButtons:b.multipleSearch,afterRedraw:b.afterRedraw,ops:b.odata,operands:b.operands,ajaxSelectOptions:e.p.ajaxSelectOptions,groupOps:b.groupOps,onChange:function(){this.p.showQuery&&a(".query",this).html(this.toUserFriendlyString());a.isFunction(b.afterChange)&&b.afterChange.call(e,a("#"+h),b)},direction:e.p.direction,id:e.p.id});f.append(k);q&&b.tmplFilters&&b.tmplFilters.length&&a(".ui-template",f).bind("change",function(){var c=a(this).val();"default"===c?a("#"+h).jqFilter("addFilter", -r):a("#"+h).jqFilter("addFilter",b.tmplFilters[parseInt(c,10)]);return!1});!0===b.multipleGroup&&(b.multipleSearch=!0);a(e).triggerHandler("jqGridFilterInitialize",[a("#"+h)]);a.isFunction(b.onInitializeSearch)&&b.onInitializeSearch.call(e,a("#"+h));b.gbox="#gbox_"+h;b.layer?a.jgrid.createModal(s,f,b,"#gview_"+a.jgrid.jqID(e.p.id),a("#gbox_"+a.jgrid.jqID(e.p.id))[0],"#"+a.jgrid.jqID(b.layer),{position:"relative"}):a.jgrid.createModal(s,f,b,"#gview_"+a.jgrid.jqID(e.p.id),a("#gbox_"+a.jgrid.jqID(e.p.id))[0]); -(b.searchOnEnter||b.closeOnEscape)&&a("#"+a.jgrid.jqID(s.themodal)).keydown(function(c){var d=a(c.target);if(b.searchOnEnter&&13===c.which&&!(d.hasClass("add-group")||d.hasClass("add-rule")||d.hasClass("delete-group")||d.hasClass("delete-rule")||d.hasClass("fm-button")&&d.is("[id$=_query]")))return a("#"+h+"_search").click(),!1;if(b.closeOnEscape&&27===c.which)return a("#"+a.jgrid.jqID(s.modalhead)).find(".ui-jqdialog-titlebar-close").click(),!1});g&&a("#"+h+"_query").bind("click",function(){a(".queryresult", -f).toggle();return!1});void 0===b.stringResult&&(b.stringResult=b.multipleSearch);a("#"+h+"_search").bind("click",function(){var c=a("#"+h),d={},n,g;c.find(".input-elm:focus").change();g=c.jqFilter("filterData");if(b.errorcheck&&(c[0].hideError(),b.showQuery||c.jqFilter("toSQLString"),c[0].p.error))return c[0].showError(),!1;if(b.stringResult){try{n=xmlJsonClass.toJson(g,"","",!1)}catch(f){try{n=JSON.stringify(g)}catch(k){}}"string"===typeof n&&(d[b.sFilter]=n,a.each([b.sField,b.sValue,b.sOper],function(){d[this]= -""}))}else b.multipleSearch?(d[b.sFilter]=g,a.each([b.sField,b.sValue,b.sOper],function(){d[this]=""})):(d[b.sField]=g.rules[0].field,d[b.sValue]=g.rules[0].data,d[b.sOper]=g.rules[0].op,d[b.sFilter]="");e.p.search=!0;a.extend(e.p.postData,d);t=a(e).triggerHandler("jqGridFilterSearch");void 0===t&&(t=!0);t&&a.isFunction(b.onSearch)&&(t=b.onSearch.call(e,e.p.filters));!1!==t&&a(e).trigger("reloadGrid",[{page:1}]);b.closeAfterSearch&&a.jgrid.hideModal("#"+a.jgrid.jqID(s.themodal),{gb:"#gbox_"+a.jgrid.jqID(e.p.id), -jqm:b.jqModal,onClose:b.onClose});return!1});a("#"+h+"_reset").bind("click",function(){var c={},d=a("#"+h);e.p.search=!1;e.p.resetsearch=!0;!1===b.multipleSearch?c[b.sField]=c[b.sValue]=c[b.sOper]="":c[b.sFilter]="";d[0].resetFilter();q&&a(".ui-template",f).val("default");a.extend(e.p.postData,c);t=a(e).triggerHandler("jqGridFilterReset");void 0===t&&(t=!0);t&&a.isFunction(b.onReset)&&(t=b.onReset.call(e));!1!==t&&a(e).trigger("reloadGrid",[{page:1}]);b.closeAfterReset&&a.jgrid.hideModal("#"+a.jgrid.jqID(s.themodal), -{gb:"#gbox_"+a.jgrid.jqID(e.p.id),jqm:b.jqModal,onClose:b.onClose});return!1});c(a("#"+h));a(".fm-button:not(.ui-state-disabled)",f).hover(function(){a(this).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover")})}}})},editGridRow:function(z,c){c=a.extend(!0,{top:0,left:0,width:300,datawidth:"auto",height:"auto",dataheight:"auto",modal:!1,overlay:30,drag:!0,resize:!0,url:null,mtype:"POST",clearAfterAdd:!0,closeAfterEdit:!1,reloadAfterSubmit:!0,onInitializeForm:null,beforeInitData:null, -beforeShowForm:null,afterShowForm:null,beforeSubmit:null,afterSubmit:null,onclickSubmit:null,afterComplete:null,onclickPgButtons:null,afterclickPgButtons:null,editData:{},recreateForm:!1,jqModal:!0,closeOnEscape:!1,addedrow:"first",topinfo:"",bottominfo:"",saveicon:[],closeicon:[],savekey:[!1,13],navkeys:[!1,38,40],checkOnSubmit:!1,checkOnUpdate:!1,_savedData:{},processing:!1,onClose:null,ajaxEditOptions:{},serializeEditData:null,viewPagerButtons:!0,overlayClass:"ui-widget-overlay"},a.jgrid.edit, -c||{});b[a(this)[0].p.id]=c;return this.each(function(){function e(){a(p+" > tbody > tr > td > .FormElement").each(function(){var b=a(".customelement",this);if(b.length){var c=a(b[0]).attr("name");a.each(d.p.colModel,function(){if(this.name===c&&this.editoptions&&a.isFunction(this.editoptions.custom_value)){try{if(l[c]=this.editoptions.custom_value.call(d,a("#"+a.jgrid.jqID(c),p),"get"),void 0===l[c])throw"e1";}catch(b){"e1"===b?a.jgrid.info_dialog(a.jgrid.errors.errcap,"function 'custom_value' "+ -a.jgrid.edit.msg.novalue,a.jgrid.edit.bClose):a.jgrid.info_dialog(a.jgrid.errors.errcap,b.message,a.jgrid.edit.bClose)}return!0}})}else{switch(a(this).get(0).type){case "checkbox":a(this).is(":checked")?l[this.name]=a(this).val():(b=a(this).attr("offval"),l[this.name]=b);break;case "select-one":l[this.name]=a("option:selected",this).val();break;case "select-multiple":l[this.name]=a(this).val();l[this.name]=l[this.name]?l[this.name].join(","):"";a("option:selected",this).each(function(b,c){a(c).text()}); -break;case "password":case "text":case "textarea":case "button":l[this.name]=a(this).val()}d.p.autoencode&&(l[this.name]=a.jgrid.htmlEncode(l[this.name]))}});return!0}function h(c,e,n,f){var k,l,p,h=0,q,m,r,C=[],u=!1,z="",t;for(t=1;t<=f;t++)z+="  ";"_empty"!==c&&(u=a(e).jqGrid("getInd",c));a(e.p.colModel).each(function(t){k=this.name;m=(l=this.editrules&&!0===this.editrules.edithidden?!1:!0===this.hidden?!0:!1)?"style='display:none'":""; -if("cb"!==k&&"subgrid"!==k&&!0===this.editable&&"rn"!==k){if(!1===u)q="";else if(k===e.p.ExpandColumn&&!0===e.p.treeGrid)q=a("td[role='gridcell']:eq("+t+")",e.rows[u]).text();else{try{q=a.unformat.call(e,a("td[role='gridcell']:eq("+t+")",e.rows[u]),{rowId:c,colModel:this},t)}catch(w){q=this.edittype&&"textarea"===this.edittype?a("td[role='gridcell']:eq("+t+")",e.rows[u]).text():a("td[role='gridcell']:eq("+t+")",e.rows[u]).html()}if(!q||" "===q||" "===q||1===q.length&&160===q.charCodeAt(0))q= -""}var s=a.extend({},this.editoptions||{},{id:k,name:k}),y=a.extend({},{elmprefix:"",elmsuffix:"",rowabove:!1,rowcontent:""},this.formoptions||{}),v=parseInt(y.rowpos,10)||h+1,A=parseInt(2*(parseInt(y.colpos,10)||1),10);"_empty"===c&&s.defaultValue&&(q=a.isFunction(s.defaultValue)?s.defaultValue.call(d):s.defaultValue);this.edittype||(this.edittype="text");d.p.autoencode&&(q=a.jgrid.htmlDecode(q));r=a.jgrid.createEl.call(d,this.edittype,s,q,!1,a.extend({},a.jgrid.ajaxOptions,e.p.ajaxSelectOptions|| -{}));if(b[d.p.id].checkOnSubmit||b[d.p.id].checkOnUpdate)b[d.p.id]._savedData[k]=q;a(r).addClass("FormElement");-1"+y.rowcontent+"");a(n).append(x);x[0].rp=v}0===p.length&&(p=a("").addClass("FormData").attr("id","tr_"+k),a(p).append(z),a(n).append(p), -p[0].rp=v);a("td:eq("+(A-2)+")",p[0]).html(void 0===y.label?e.p.colNames[t]:y.label);a("td:eq("+(A-1)+")",p[0]).append(y.elmprefix).append(r).append(y.elmsuffix);"custom"===this.edittype&&a.isFunction(s.custom_value)&&s.custom_value.call(d,a("#"+k,"#"+g),"set",q);a.jgrid.bindEv.call(d,r,s);C[h]=t;h++}});0
').insertAfter(b.o);e.onShow?e.onShow(b):b.w.show();p(b);return d}, -close:function(a){a=l[a];if(!a.a)return d;a.a=d;m[0]&&(m.pop(),m[0]||s("unbind"));a.c.toTop&&a.o&&c("#jqmP"+a.w[0]._jqm).after(a.w).remove();if(a.c.onHide)a.c.onHide(a);else a.w.hide(),a.o&&a.o.remove();return d},params:{}};var n=0,l=c.jqm.hash,m=[],d=!1,p=function(a){try{c(":input:visible",a.w)[0].focus()}catch(d){}},s=function(a){c(document)[a]("keypress",q)[a]("keydown",q)[a]("mousedown",q)},q=function(a){var d=l[m[m.length-1]],b=!c(a.target).parents(".jqmID"+d.s)[0];b&&(c(".jqmID"+d.s).each(function(){var d= -c(this),h=d.offset();if(h.top<=a.pageY&&a.pageY<=h.top+d.height()&&h.left<=a.pageX&&a.pageX<=h.left+d.width())return b=!1}),p(d));return!b},r=function(a,k,b){return a.each(function(){var a=this._jqm;c(k).each(function(){this[b]||(this[b]=[],c(this).click(function(){for(var a in{jqmShow:1,jqmHide:1})for(var b in this[a])if(l[this[a][b]])l[this[a][b]].w[a](this);return d}));this[b].push(a)})})}})(jQuery); -(function(b){b.fn.jqDrag=function(a){return h(this,a,"d")};b.fn.jqResize=function(a,b){return h(this,a,"r",b)};b.jqDnR={dnr:{},e:0,drag:function(a){"d"==d.k?e.css({left:d.X+a.pageX-d.pX,top:d.Y+a.pageY-d.pY}):(e.css({width:Math.max(a.pageX-d.pX+d.W,0),height:Math.max(a.pageY-d.pY+d.H,0)}),f&&g.css({width:Math.max(a.pageX-f.pX+f.W,0),height:Math.max(a.pageY-f.pY+f.H,0)}));return!1},stop:function(){b(document).unbind("mousemove",c.drag).unbind("mouseup",c.stop)}};var c=b.jqDnR,d=c.dnr,e=c.e,g,f,h=function(a, -c,h,n){return a.each(function(){c=c?b(c,a):a;c.bind("mousedown",{e:a,k:h},function(a){var c=a.data,k={};e=c.e;g=n?b(n):!1;if("relative"!=e.css("position"))try{e.position(k)}catch(h){}d={X:k.left||l("left")||0,Y:k.top||l("top")||0,W:l("width")||e[0].scrollWidth||0,H:l("height")||e[0].scrollHeight||0,pX:a.pageX,pY:a.pageY,k:c.k};f=g&&"d"!=c.k?{X:k.left||m("left")||0,Y:k.top||m("top")||0,W:g[0].offsetWidth||m("width")||0,H:g[0].offsetHeight||m("height")||0,pX:a.pageX,pY:a.pageY,k:c.k}:!1;if(b("input.hasDatepicker", -e[0])[0])try{b("input.hasDatepicker",e[0]).datepicker("hide")}catch(p){}b(document).mousemove(b.jqDnR.drag).mouseup(b.jqDnR.stop);return!1})})},l=function(a){return parseInt(e.css(a),10)||!1},m=function(a){return parseInt(g.css(a),10)||!1}})(jQuery); -(function(b){b.jgrid.extend({setSubGrid:function(){return this.each(function(){var d,c;this.p.subGridOptions=b.extend({plusicon:"ui-icon-plus",minusicon:"ui-icon-minus",openicon:"ui-icon-carat-1-sw",expandOnLoad:!1,delayOnLoad:50,selectOnExpand:!1,selectOnCollapse:!1,reloadOnExpand:!0},this.p.subGridOptions||{});this.p.colNames.unshift("");this.p.colModel.unshift({name:"subgrid",width:b.jgrid.cell_width?this.p.subGridWidth+this.p.cellLayout:this.p.subGridWidth,sortable:!1,resizable:!1,hidedlg:!0, -search:!1,fixed:!0});d=this.p.subGridModel;if(d[0])for(d[0].align=b.extend([],d[0].align||[]),c=0;c"},addSubGrid:function(d,c){return this.each(function(){var a= -this;if(a.grid){var p=function(c,d,h){d=b("").html(d);b(c).append(d)},n=function(c,d){var h,f,e,g=b("
"),k=b("");for(f=0;f"),b(h).html(a.p.subGridModel[0].name[f]),b(h).width(a.p.subGridModel[0].width[f]),b(k).append(h);b(g).append(k);c&&(e=a.p.xmlReader.subgrid, -b(e.root+" "+e.row,c).each(function(){k=b("");if(!0===e.repeatitems)b(e.cell,this).each(function(a){p(k,b(this).text()||" ",a)});else{var c=a.p.subGridModel[0].mapping||a.p.subGridModel[0].name;if(c)for(f=0;f"),l=b("");for(f=0;f"),b(h).html(a.p.subGridModel[0].name[f]),b(h).width(a.p.subGridModel[0].width[f]),b(l).append(h);b(m).append(l);if(c&&(g=a.p.jsonReader.subgrid,h=b.jgrid.getAccessor(c,g.root),void 0!==h))for(f=0;f"); -if(!0===g.repeatitems)for(g.cell&&(e=e[g.cell]),k=0;k ":"";g=b(a).triggerHandler("jqGridSubGridBeforeExpand",[m+"_"+e,e]);(g=!1===g||"stop"===g?!1:!0)&&b.isFunction(a.p.subGridBeforeExpand)&&(g=a.p.subGridBeforeExpand.call(a,m+"_"+e,e));if(!1===g)return!1;b(c).after(""+ -s+"
");b(a).triggerHandler("jqGridSubGridRowExpanded",[m+"_"+e,e]);b.isFunction(a.p.subGridRowExpanded)?a.p.subGridRowExpanded.call(a,m+"_"+e,e):v(c)}else b(l).show();b(this).html("").removeClass("sgcollapsed").addClass("sgexpanded");a.p.subGridOptions.selectOnExpand&&b(a).jqGrid("setSelection",e)}else if(b(this).hasClass("sgexpanded")){g=b(a).triggerHandler("jqGridSubGridRowColapsed",[m+"_"+e,e]);g=!1===g||"stop"===g?!1:!0;e=c.id;g&&b.isFunction(a.p.subGridRowColapsed)&&(g=a.p.subGridRowColapsed.call(a,m+"_"+e,e));if(!1===g)return!1;!0===a.p.subGridOptions.reloadOnExpand?b(l).remove(".ui-subgrid"):b(l).hasClass("ui-subgrid")&&b(l).hide();b(this).html("").removeClass("sgexpanded").addClass("sgcollapsed");a.p.subGridOptions.selectOnCollapse&&b(a).jqGrid("setSelection",e)}return!1}),q++;!0===a.p.subGridOptions.expandOnLoad&&b(a.rows).filter(".jqgrow").each(function(a,c){b(c.cells[0]).click()});a.subGridXml=function(a,b){n(a,b)};a.subGridJson=function(a,b){r(a,b)}}})},expandSubGridRow:function(d){return this.each(function(){if((this.grid||d)&&!0===this.p.subGrid){var c=b(this).jqGrid("getInd",d,!0);c&&(c=b("td.sgcollapsed", -c)[0])&&b(c).trigger("click")}})},collapseSubGridRow:function(d){return this.each(function(){if((this.grid||d)&&!0===this.p.subGrid){var c=b(this).jqGrid("getInd",d,!0);c&&(c=b("td.sgexpanded",c)[0])&&b(c).trigger("click")}})},toggleSubGridRow:function(d){return this.each(function(){if((this.grid||d)&&!0===this.p.subGrid){var c=b(this).jqGrid("getInd",d,!0);if(c){var a=b("td.sgcollapsed",c)[0];a?b(a).trigger("click"):(a=b("td.sgexpanded",c)[0])&&b(a).trigger("click")}}})}})})(jQuery); -(function(d){d.extend(d.jgrid,{template:function(b){var k=d.makeArray(arguments).slice(1),a,c=k.length;null==b&&(b="");return b.replace(/\{([\w\-]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?\}/g,function(b,m){if(!isNaN(parseInt(m,10)))return k[parseInt(m,10)];for(a=0;atd>span.tree-wrap-"+this.p.direction).removeClass(a).addClass(m),q&&d(n).show().find(">td>span.tree-wrap-"+this.p.direction).removeClass(a).addClass(m))}else p&&(d(e).show(),q&&d(n).show());e=e.nextSibling;q&&(n=n.nextSibling)}f.removeClass(m).addClass(a)}d(this).triggerHandler("jqGridGroupingClickGroup",[b,r]);d.isFunction(this.p.onClickGroup)&&this.p.onClickGroup.call(this, -b,r)});return!1},groupingRender:function(b,k,a,c){return this.each(function(){function g(a,b,c){var d=!1;if(0===b)d=c[a];else{var e=c[a].idx;if(0===e)d=c[a];else for(;0<=a;a--)if(c[a].idx===e-b){d=c[a];break}}return d}function m(a,b,c,f){var h=g(a,b,c),m=e.p.colModel,n,q=h.cnt;a="";var p;for(p=f;p ",t="{0}";d.each(h.summary,function(){if(this.nm===m[p].name){m[p].summaryTpl&&(t=m[p].summaryTpl);"string"===typeof this.st&&"avg"===this.st.toLowerCase()&& -(this.sd&&this.vd?this.v/=this.vd:this.v&&0"+d.jgrid.format(t,n)+"";return!1}});a+=r}return a}var e=this,f=e.p.groupingView,h="",p="",r,q,n=f.groupCollapse?f.plusicon:f.minusicon,t,y=[],z=f.groupField.length,n=n+(" tree-wrap-"+e.p.direction);d.each(e.p.colModel,function(a,b){var c;for(c=0;c(a-1)*c&&l.startRow";try{d.isArray(f.formatDisplayField)&&d.isFunction(f.formatDisplayField[l.idx])?(l.displayValue=f.formatDisplayField[l.idx].call(e,l.displayValue,l.value, -e.p.colModel[y[l.idx]],l.idx,f),t=l.displayValue):t=e.formatter(r,l.displayValue,y[l.idx],l.value)}catch(C){t=l.displayValue}"header"===f.groupSummaryPos[l.idx]?(h+=''+p+d.jgrid.template(f.groupText[l.idx],t,l.cnt,l.summary)+"",h+=m(g,l.idx-1,f.groups,1),h+=""):h+=''+p+d.jgrid.template(f.groupText[l.idx],t,l.cnt,l.summary)+"";if(z-1===l.idx){var s=f.groups[g+1],v,u=0;v=l.startRow;var B=void 0!==s?f.groups[g+1].startRow:b.length;f._locgr&&(u=(a-1)*c,u>l.startRow&&(v=u));for(;v