[jira] [Updated] (NIFI-154) Readlink not supported on OS X
[ https://issues.apache.org/jira/browse/NIFI-154?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jake Visser updated NIFI-154: - Summary: Readlink not supported on OS X (was: Readlink not support on OS X) Readlink not supported on OS X -- Key: NIFI-154 URL: https://issues.apache.org/jira/browse/NIFI-154 Project: Apache NiFi Issue Type: Bug Components: Tools Affects Versions: 0.0.1 Environment: OSX Reporter: Jake Visser Priority: Minor Attachments: readlink-patch.diff OS X does not support readlink, however greadlink is available with near identical functionality (brew install coreutils). nifi.sh needs to be modified to detect Darwin (and other effected OS's?), and call the appropriate command. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Created] (NIFI-155) Test Failure: MulticastProtocolListenerTest and ClusterServiceDiscoveryTest
Jake Visser created NIFI-155: Summary: Test Failure: MulticastProtocolListenerTest and ClusterServiceDiscoveryTest Key: NIFI-155 URL: https://issues.apache.org/jira/browse/NIFI-155 Project: Apache NiFi Issue Type: Bug Environment: Apache Maven 3.2.3 (33f8c3e1027c3ddde99d3cdebad2656a31e8fdf4; 2014-08-12T06:58:10+10:00) Maven home: /usr/local/Cellar/maven/3.2.3/libexec Java version: 1.7.0_71, vendor: Oracle Corporation Java home: /Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home/jre Default locale: en_US, platform encoding: UTF-8 OS name: mac os x, version: 10.10.1, arch: x86_64, family: mac Reporter: Jake Visser Priority: Minor The following is the output of a test failure on OS X. Nifi still builds and operates fine - however I have not tested clustering. At the time of testing I am connected to wifi - and not running in a privileged mode. Is elevated privileges required? Ill look into the code and debug further over the next few days. Running org.apache.nifi.cluster.protocol.impl.ClusterServiceDiscoveryTest Tests run: 3, Failures: 0, Errors: 2, Skipped: 1, Time elapsed: 0.013 sec FAILURE! - in org.apache.nifi.cluster.protocol.impl.ClusterServiceDiscoveryTest testBadBroadcastMessage(org.apache.nifi.cluster.protocol.impl.ClusterServiceDiscoveryTest) Time elapsed: 0.011 sec ERROR! java.net.SocketException: Can't assign requested address at java.net.PlainDatagramSocketImpl.join(Native Method) at java.net.AbstractPlainDatagramSocketImpl.join(AbstractPlainDatagramSocketImpl.java:179) at java.net.MulticastSocket.joinGroup(MulticastSocket.java:319) at org.apache.nifi.io.socket.multicast.MulticastListener.start(MulticastListener.java:95) at org.apache.nifi.cluster.protocol.impl.MulticastProtocolListener.start(MulticastProtocolListener.java:96) at org.apache.nifi.cluster.protocol.impl.ClusterServiceDiscovery.start(ClusterServiceDiscovery.java:125) at org.apache.nifi.cluster.protocol.impl.ClusterServiceDiscoveryTest.setup(ClusterServiceDiscoveryTest.java:67) testGetAddressOnStartup(org.apache.nifi.cluster.protocol.impl.ClusterServiceDiscoveryTest) Time elapsed: 0.001 sec ERROR! java.net.SocketException: Can't assign requested address at java.net.PlainDatagramSocketImpl.join(Native Method) at java.net.AbstractPlainDatagramSocketImpl.join(AbstractPlainDatagramSocketImpl.java:179) at java.net.MulticastSocket.joinGroup(MulticastSocket.java:319) at org.apache.nifi.io.socket.multicast.MulticastListener.start(MulticastListener.java:95) at org.apache.nifi.cluster.protocol.impl.MulticastProtocolListener.start(MulticastProtocolListener.java:96) at org.apache.nifi.cluster.protocol.impl.ClusterServiceDiscovery.start(ClusterServiceDiscovery.java:125) at org.apache.nifi.cluster.protocol.impl.ClusterServiceDiscoveryTest.setup(ClusterServiceDiscoveryTest.java:67) Running org.apache.nifi.cluster.protocol.impl.ClusterServiceLocatorTest Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 4.026 sec - in org.apache.nifi.cluster.protocol.impl.ClusterServiceLocatorTest Running org.apache.nifi.cluster.protocol.impl.ClusterServicesBroadcasterTest Tests run: 1, Failures: 0, Errors: 0, Skipped: 1, Time elapsed: 0 sec - in org.apache.nifi.cluster.protocol.impl.ClusterServicesBroadcasterTest Running org.apache.nifi.cluster.protocol.impl.MulticastProtocolListenerTest Tests run: 2, Failures: 0, Errors: 1, Skipped: 1, Time elapsed: 0.002 sec FAILURE! - in org.apache.nifi.cluster.protocol.impl.MulticastProtocolListenerTest testBadRequest(org.apache.nifi.cluster.protocol.impl.MulticastProtocolListenerTest) Time elapsed: 0.001 sec ERROR! java.net.SocketException: Can't assign requested address at java.net.PlainDatagramSocketImpl.join(Native Method) at java.net.AbstractPlainDatagramSocketImpl.join(AbstractPlainDatagramSocketImpl.java:179) at java.net.MulticastSocket.joinGroup(MulticastSocket.java:319) at org.apache.nifi.io.socket.multicast.MulticastListener.start(MulticastListener.java:95) at org.apache.nifi.cluster.protocol.impl.MulticastProtocolListener.start(MulticastProtocolListener.java:96) at org.apache.nifi.cluster.protocol.impl.MulticastProtocolListenerTest.setup(MulticastProtocolListenerTest.java:68) Running org.apache.nifi.cluster.protocol.impl.NodeProtocolSenderImplTest Tests run: 1, Failures: 0, Errors: 0, Skipped: 1, Time elapsed: 0 sec - in org.apache.nifi.cluster.protocol.impl.NodeProtocolSenderImplTest Results : Tests in error: ClusterServiceDiscoveryTest.setup:67 » Socket Can't assign requested address ClusterServiceDiscoveryTest.setup:67 » Socket Can't assign requested address MulticastProtocolListenerTest.setup:68 » Socket Can't assign requested address
[jira] [Created] (NIFI-156) provide a way in the UI for users to how many flowfiles are being swapped to disk
Ben Icore created NIFI-156: -- Summary: provide a way in the UI for users to how many flowfiles are being swapped to disk Key: NIFI-156 URL: https://issues.apache.org/jira/browse/NIFI-156 Project: Apache NiFi Issue Type: Improvement Components: Core Framework Affects Versions: 0.0.1 Reporter: Ben Icore Priority: Minor provide a way for users to see how many flowfiles have been swapped to disk, how many are in the flow, rate at which flowfiles are being swapped out, etc -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[2/3] incubator-nifi git commit: Merge branch 'develop', remote branch 'origin/develop' into develop
Merge branch 'develop', remote branch 'origin/develop' into develop Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/c55e8510 Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/c55e8510 Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/c55e8510 Branch: refs/heads/develop Commit: c55e8510891c0e2eeb25a0b32fd574ae71aa8a7c Parents: 4410b70 3861446 Author: joewitt joew...@apache.org Authored: Tue Dec 9 20:59:30 2014 -0500 Committer: joewitt joew...@apache.org Committed: Tue Dec 9 20:59:30 2014 -0500 -- .../web/controller/StandardSearchContext.java | 18 +--- .../src/main/webapp/js/nf/canvas/nf-canvas.js | 95 ++-- .../main/webapp/js/nf/canvas/nf-connectable.js | 8 +- .../main/webapp/js/nf/canvas/nf-draggable.js| 49 ++ .../js/nf/canvas/nf-processor-property-table.js | 10 +-- .../main/webapp/js/nf/canvas/nf-selectable.js | 6 +- .../main/webapp/js/nf/nf-processor-details.js | 16 ++-- 7 files changed, 103 insertions(+), 99 deletions(-) --
[1/3] incubator-nifi git commit: Merge branch 'develop', remote branch 'origin/develop' into develop
Repository: incubator-nifi Updated Branches: refs/heads/develop 386144695 - 51d177b24 Merge branch 'develop', remote branch 'origin/develop' into develop Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/4410b707 Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/4410b707 Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/4410b707 Branch: refs/heads/develop Commit: 4410b7072cfe0daba72a45b6a82e9e5b04dbcaff Parents: 0125f3d Author: joewitt joew...@apache.org Authored: Tue Dec 9 10:08:57 2014 -0500 Committer: joewitt joew...@apache.org Committed: Tue Dec 9 10:08:57 2014 -0500 -- --
[jira] [Closed] (NIFI-151) web api DfmAccessControlTest fails unless doing a clean install
[ https://issues.apache.org/jira/browse/NIFI-151?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Joseph Witt closed NIFI-151. Resolution: Fixed Assignee: Joseph Witt Fixed on develop branch. commit 51d177b2426e4940134069c28d8d7f70c473a353 Author: joewitt joew...@apache.org Date: Wed Dec 10 07:09:18 2014 -0500 NIFI-151 Fixed test issue which resulted from needing to cleanup after previous runs web api DfmAccessControlTest fails unless doing a clean install --- Key: NIFI-151 URL: https://issues.apache.org/jira/browse/NIFI-151 Project: Apache NiFi Issue Type: Bug Components: Core Framework Reporter: Joseph Witt Assignee: Joseph Witt Priority: Minor Fix For: 0.0.1 Tests run: 29, Failures: 1, Errors: 0, Skipped: 1, Time elapsed: 12.159 sec FAILURE! - in org.apache.nifi.integration.accesscontrol.DfmAccessControlTest testImportTemplate(org.apache.nifi.integration.accesscontrol.DfmAccessControlTest) Time elapsed: 0.396 sec FAILURE! java.lang.AssertionError: expected:201 but was:200 at org.junit.Assert.fail(Assert.java:88) at org.junit.Assert.failNotEquals(Assert.java:743) at org.junit.Assert.assertEquals(Assert.java:118) at org.junit.Assert.assertEquals(Assert.java:555) at org.junit.Assert.assertEquals(Assert.java:542) at org.apache.nifi.integration.accesscontrol.DfmAccessControlTest.testImportTemplate(DfmAccessControlTest.java:1310) If you do a clean install then it works fine. So the 201/200 makes sense. The test though seems to be not properly cleaning up after itself. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
incubator-nifi git commit: NIFI-154 contributed via JIRA by Jake Visser jake at nightrise dot com dot au
Repository: incubator-nifi Updated Branches: refs/heads/develop 51d177b24 - 2735c6c25 NIFI-154 contributed via JIRA by Jake Visser jake at nightrise dot com dot au Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/2735c6c2 Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/2735c6c2 Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/2735c6c2 Branch: refs/heads/develop Commit: 2735c6c253483fb72f5ec946264f321392950b72 Parents: 51d177b Author: joewitt joew...@apache.org Authored: Wed Dec 10 07:38:12 2014 -0500 Committer: joewitt joew...@apache.org Committed: Wed Dec 10 07:38:12 2014 -0500 -- .../resources/src/main/resources/bin/nifi.sh| 16 ++-- 1 file changed, 14 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/2735c6c2/nar-bundles/framework-bundle/framework/resources/src/main/resources/bin/nifi.sh -- diff --git a/nar-bundles/framework-bundle/framework/resources/src/main/resources/bin/nifi.sh b/nar-bundles/framework-bundle/framework/resources/src/main/resources/bin/nifi.sh index d069fc9..6fedfb7 100644 --- a/nar-bundles/framework-bundle/framework/resources/src/main/resources/bin/nifi.sh +++ b/nar-bundles/framework-bundle/framework/resources/src/main/resources/bin/nifi.sh @@ -50,6 +50,11 @@ if [ x$JAVA_MAX_PERMSIZE = x ]; then export JAVA_MAX_PERMSIZE fi +# +#Readlink is not available on all systems. Change variable to appropriate alternative as part of OS detection +# + +READLINK=readlink warn() { echo ${PROGNAME}: $* @@ -65,6 +70,7 @@ detectOS() { cygwin=false; aix=false; os400=false; +darwin=false; case `uname` in CYGWIN*) cygwin=true @@ -75,12 +81,18 @@ detectOS() { OS400*) os400=true ;; +Darwin) + darwin=true + ;; esac # For AIX, set an environment variable if $aix; then export LDR_CNTRL=MAXDATA=0xB000@DSA echo $LDR_CNTRL fi +if $darwin; then + READLINK=greadlink +fi } unlimitFD() { @@ -118,8 +130,8 @@ locateHome() { # In POSIX shells, CDPATH may cause cd to write to stdout (unset CDPATH) /dev/null 21 unset CDPATH -NIFI_HOME=$(dirname $(readlink -f $0))/../ -NIFI_HOME=$(readlink -f $NIFI_HOME) +NIFI_HOME=$(dirname $($READLINK -f $0))/../ +NIFI_HOME=$($READLINK -f $NIFI_HOME) cd $NIFI_HOME echo Directory changed to NIFI_HOME of '$NIFI_HOME' if [ ! -d $NIFI_HOME ]; then
[jira] [Commented] (NIFI-154) Readlink not supported on OS X
[ https://issues.apache.org/jira/browse/NIFI-154?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14241044#comment-14241044 ] Joseph Witt commented on NIFI-154: -- Jake First thanks so much for contributing and providing a patch. We've had quite a few MacOS users commenting thus far so this could be really helpful. I've confirmed it still works with linux. Can you please check it out on your end? Thanks Joe commit 2735c6c253483fb72f5ec946264f321392950b72 Author: joewitt joew...@apache.org Date: Wed Dec 10 07:38:12 2014 -0500 NIFI-154 contributed via JIRA by Jake Visser jake at nightrise dot com dot au Readlink not supported on OS X -- Key: NIFI-154 URL: https://issues.apache.org/jira/browse/NIFI-154 Project: Apache NiFi Issue Type: Bug Components: Tools Affects Versions: 0.0.1 Environment: OSX Reporter: Jake Visser Assignee: Joseph Witt Priority: Minor Attachments: readlink-patch.diff OS X does not support readlink, however greadlink is available with near identical functionality (brew install coreutils). nifi.sh needs to be modified to detect Darwin (and other effected OS's?), and call the appropriate command. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Closed] (NIFI-154) Readlink not supported on OS X
[ https://issues.apache.org/jira/browse/NIFI-154?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Joseph Witt closed NIFI-154. Resolution: Fixed Fix Version/s: 0.0.1 changes pushed to develop branch. Tested to still work as it did before though contributor will also check for osx. If still needs work can reopen or address whatever the new issue is. Have sent off a question to the mentors about patches and how to accept them/etc.. But this approach appears to be consistent with other apache projects. Readlink not supported on OS X -- Key: NIFI-154 URL: https://issues.apache.org/jira/browse/NIFI-154 Project: Apache NiFi Issue Type: Bug Components: Tools Affects Versions: 0.0.1 Environment: OSX Reporter: Jake Visser Assignee: Joseph Witt Priority: Minor Fix For: 0.0.1 Attachments: readlink-patch.diff OS X does not support readlink, however greadlink is available with near identical functionality (brew install coreutils). nifi.sh needs to be modified to detect Darwin (and other effected OS's?), and call the appropriate command. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[2/2] incubator-nifi git commit: NIFI-27: - Latest version of qtip2.
NIFI-27: - Latest version of qtip2. Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/0ded4424 Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/0ded4424 Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/0ded4424 Branch: refs/heads/nifi-27 Commit: 0ded44245ee9dd86f39ad8b42dddc9be69baf537 Parents: 2735c6c Author: Matt Gilman matt.c.gil...@gmail.com Authored: Wed Dec 10 08:35:31 2014 -0500 Committer: Matt Gilman matt.c.gil...@gmail.com Committed: Wed Dec 10 08:35:31 2014 -0500 -- .../webapp/WEB-INF/pages/bulletin-board.jsp | 2 +- .../src/main/webapp/WEB-INF/pages/canvas.jsp| 2 +- .../src/main/webapp/WEB-INF/pages/cluster.jsp | 2 +- .../src/main/webapp/WEB-INF/pages/counters.jsp | 2 +- .../src/main/webapp/WEB-INF/pages/history.jsp | 2 +- .../main/webapp/WEB-INF/pages/provenance.jsp| 2 +- .../src/main/webapp/WEB-INF/pages/summary.jsp | 2 +- .../src/main/webapp/WEB-INF/pages/templates.jsp | 2 +- .../src/main/webapp/WEB-INF/pages/users.jsp | 2 +- .../main/webapp/js/jquery/qtip2/jquery.qtip.css | 557 --- .../webapp/js/jquery/qtip2/jquery.qtip.min.css | 3 + .../webapp/js/jquery/qtip2/jquery.qtip.min.js | 711 +-- 12 files changed, 17 insertions(+), 1272 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/0ded4424/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/bulletin-board.jsp -- diff --git a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/bulletin-board.jsp b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/bulletin-board.jsp index 8669f6c..083862d 100644 --- a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/bulletin-board.jsp +++ b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/bulletin-board.jsp @@ -24,7 +24,7 @@ ${nf.bulletin.board.style.tags} link rel=stylesheet href=js/jquery/combo/jquery.combo.css?${project.version} type=text/css / link rel=stylesheet href=js/jquery/modal/jquery.modal.css?${project.version} type=text/css / -link rel=stylesheet href=js/jquery/qtip2/jquery.qtip.css? type=text/css / +link rel=stylesheet href=js/jquery/qtip2/jquery.qtip.min.css? type=text/css / link rel=stylesheet href=js/jquery/css/smoothness/jquery-ui-1.8.10.custom.css type=text/css / script type=text/javascript src=js/jquery/jquery-1.7.min.js/script script type=text/javascript src=js/jquery/jquery.center.js/script http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/0ded4424/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/canvas.jsp -- diff --git a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/canvas.jsp b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/canvas.jsp index acdd147..c8f2ff7 100644 --- a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/canvas.jsp +++ b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/canvas.jsp @@ -28,7 +28,7 @@ link rel=stylesheet href=js/jquery/tabbs/jquery.tabbs.css?${project.version} type=text/css / link rel=stylesheet href=js/jquery/combo/jquery.combo.css?${project.version} type=text/css / link rel=stylesheet href=js/jquery/modal/jquery.modal.css?${project.version} type=text/css / -link rel=stylesheet href=js/jquery/qtip2/jquery.qtip.css? type=text/css / +link rel=stylesheet href=js/jquery/qtip2/jquery.qtip.min.css? type=text/css / link rel=stylesheet href=js/jquery/css/smoothness/jquery-ui-1.8.10.custom.css type=text/css / link rel=stylesheet href=js/jquery/minicolors/jquery.minicolors.css type=text/css / link rel=stylesheet href=js/jquery/slickgrid/css/slick.grid.css type=text/css / http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/0ded4424/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/cluster.jsp -- diff --git a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/cluster.jsp b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/cluster.jsp index 33fdbb0..e3e7b86 100644 --- a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/cluster.jsp +++
[3/9] incubator-nifi git commit: NIFI-145
NIFI-145 Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/64657049 Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/64657049 Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/64657049 Branch: refs/heads/develop Commit: 646570490c530d0c076c9bd9b7d1170946a9dae8 Parents: cb63c66 Author: Mark Payne marka...@hotmail.com Authored: Tue Dec 9 12:18:35 2014 -0500 Committer: Mark Payne marka...@hotmail.com Committed: Tue Dec 9 12:18:35 2014 -0500 -- .../java/org/apache/nifi/BootstrapListener.java | 229 .../src/main/java/org/apache/nifi/NiFi.java | 25 ++ nifi-bootstrap/pom.xml | 17 +- .../apache/nifi/bootstrap/BootstrapCodec.java | 89 ++ .../org/apache/nifi/bootstrap/NiFiListener.java | 116 .../java/org/apache/nifi/bootstrap/RunNiFi.java | 270 +-- .../org/apache/nifi/bootstrap/ShutdownHook.java | 59 +++- .../exception/InvalidCommandException.java | 37 +++ 8 files changed, 824 insertions(+), 18 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/64657049/nar-bundles/framework-bundle/framework/runtime/src/main/java/org/apache/nifi/BootstrapListener.java -- diff --git a/nar-bundles/framework-bundle/framework/runtime/src/main/java/org/apache/nifi/BootstrapListener.java b/nar-bundles/framework-bundle/framework/runtime/src/main/java/org/apache/nifi/BootstrapListener.java new file mode 100644 index 000..3bcbeb3 --- /dev/null +++ b/nar-bundles/framework-bundle/framework/runtime/src/main/java/org/apache/nifi/BootstrapListener.java @@ -0,0 +1,229 @@ +/* + * 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; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.OutputStream; +import java.net.InetSocketAddress; +import java.net.ServerSocket; +import java.net.Socket; +import java.nio.charset.StandardCharsets; +import java.util.Arrays; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class BootstrapListener { + private static final Logger logger = LoggerFactory.getLogger(BootstrapListener.class); + + private final NiFi nifi; + private final int bootstrapPort; + + private Listener listener; + private ServerSocket serverSocket; + + + public BootstrapListener(final NiFi nifi, final int port) { + this.nifi = nifi; + this.bootstrapPort = port; + } + + public void start() throws IOException { + logger.debug(Starting Bootstrap Listener to communicate with Bootstrap Port {}, bootstrapPort); + + serverSocket = new ServerSocket(); + serverSocket.bind(new InetSocketAddress(localhost, 0)); + + final int localPort = serverSocket.getLocalPort(); + logger.info(Started Bootstrap Listener, Listening for incoming requests on port {}, localPort); + + listener = new Listener(serverSocket); + final Thread listenThread = new Thread(listener); + listenThread.setName(Listen to Bootstrap); + listenThread.start(); + + logger.debug(Notifying Bootstrap that local port is {}, localPort); + try (final Socket socket = new Socket()) { + socket.setSoTimeout(6); + socket.connect(new InetSocketAddress(localhost, bootstrapPort)); + socket.setSoTimeout(6); + + final OutputStream out = socket.getOutputStream(); + out.write((PORT + localPort + \n).getBytes(StandardCharsets.UTF_8)); +
[5/9] incubator-nifi git commit: NIFIDEV-145: Bug fixes and pulled bootstrap into the assembly pom
NIFIDEV-145: Bug fixes and pulled bootstrap into the assembly pom Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/e544191f Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/e544191f Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/e544191f Branch: refs/heads/develop Commit: e544191f1d59dbaf9aec6e1bd708bbe013c6661a Parents: eed4a9b Author: Mark Payne marka...@hotmail.com Authored: Tue Dec 9 14:37:31 2014 -0500 Committer: Mark Payne marka...@hotmail.com Committed: Tue Dec 9 14:37:31 2014 -0500 -- assemblies/nifi/pom.xml | 5 + .../java/org/apache/nifi/bootstrap/RunNiFi.java | 22 +++- 2 files changed, 17 insertions(+), 10 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/e544191f/assemblies/nifi/pom.xml -- diff --git a/assemblies/nifi/pom.xml b/assemblies/nifi/pom.xml index ec06a23..556b8fe 100644 --- a/assemblies/nifi/pom.xml +++ b/assemblies/nifi/pom.xml @@ -120,6 +120,11 @@ version${framework.version}/version /dependency dependency + groupIdorg.apache.nifi/groupId + artifactIdnifi-bootstrap/artifactId + version0.0.1-SNAPSHOT/version +/dependency +dependency groupIdorg.apache.nifi/groupId artifactIdnifi-resources/artifactId version${framework.version}/version http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/e544191f/nifi-bootstrap/src/main/java/org/apache/nifi/bootstrap/RunNiFi.java -- diff --git a/nifi-bootstrap/src/main/java/org/apache/nifi/bootstrap/RunNiFi.java b/nifi-bootstrap/src/main/java/org/apache/nifi/bootstrap/RunNiFi.java index ea3e566..54932c8 100644 --- a/nifi-bootstrap/src/main/java/org/apache/nifi/bootstrap/RunNiFi.java +++ b/nifi-bootstrap/src/main/java/org/apache/nifi/bootstrap/RunNiFi.java @@ -30,7 +30,6 @@ import java.net.InetSocketAddress; import java.net.Socket; import java.nio.charset.StandardCharsets; import java.nio.file.Files; -import java.nio.file.Path; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -250,7 +249,13 @@ public class RunNiFi { builder.directory(new File(specifiedWorkingDir)); } - final File workingDir = builder.directory(); + final File bootstrapConfigAbsoluteFile = bootstrapConfigFile.getAbsoluteFile(); + final File binDir = bootstrapConfigAbsoluteFile.getParentFile(); + final File workingDir = binDir.getParentFile(); + + if ( specifiedWorkingDir == null ) { + builder.directory(workingDir); + } final String libFilename = replaceNull(props.get(lib.dir), ./lib).trim(); File libDir = getFile(libFilename, workingDir); @@ -295,13 +300,10 @@ public class RunNiFi { throw new RuntimeException(Could not find conf directory at + confDir.getAbsolutePath()); } - final Path workingDirPath = workingDir.toPath(); final ListString cpFiles = new ArrayList(confFiles.length + libFiles.length); cpFiles.add(confDir.getAbsolutePath()); for ( final File file : libFiles ) { - final Path path = workingDirPath.relativize(file.toPath()); - final String cpPath = path.toString(); - cpFiles.add(cpPath); + cpFiles.add(file.getAbsolutePath()); } final StringBuilder classPathBuilder = new StringBuilder(); @@ -380,12 +382,12 @@ public class RunNiFi { } private File getFile(final String filename, final File workingDir) { - File libDir = new File(filename); - if ( !libDir.isAbsolute() ) { - libDir = new File(workingDir, filename); + File file = new File(filename); + if ( !file.isAbsolute() ) { + file = new File(workingDir, filename); } - return libDir; + return file; } private String replaceNull(final String value, final String replacement) {
[1/3] incubator-nifi git commit: NIFI-27: - Latest version of D3.
Repository: incubator-nifi Updated Branches: refs/heads/nifi-27 eb880757b - fef807136 http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/fef80713/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/nf/nf-status-history.js -- diff --git a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/nf/nf-status-history.js b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/nf/nf-status-history.js index f570082..178207e 100644 --- a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/nf/nf-status-history.js +++ b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/nf/nf-status-history.js @@ -60,13 +60,6 @@ nf.StatusHistory = (function () { }; /** - * version 3.4+ of D3 provides a mechanism for specifying - * a number of custom formatters. this achieves similar function - * until we're able to upgrade. - */ -var timeFormats = null; - -/** * The time offset of the server. */ var serverTimeOffset = null; @@ -373,26 +366,21 @@ nf.StatusHistory = (function () { visible: instances[instance.id] === true }); }); - + // -- // custom time axis formatter // -- -// create the formatting function -var customTimeFormat = function (d) { -var formatter; - -// identify the most appropriate formatter for this date -$.each(timeFormats, function (_, timeFormat) { -if (timeFormat[1](d)) { -formatter = timeFormat; -return false; -} -}); - -// return the formatter date -return formatter[0](d); -}; +var customTimeFormat = d3.time.format.multi([ +[':%S.%L', function (d) { return d.getMilliseconds(); }], +[':%S', function (d) { return d.getSeconds(); }], +['%H:%M', function (d) { return d.getMinutes(); }], +['%H:%M', function (d) { return d.getHours(); }], +['%a %d', function (d) { return d.getDay() d.getDate() !== 1; }], +['%b %d', function (d) { return d.getDate() !== 1; }], +['%B', function (d) { return d.getMonth(); }], +['%Y', function () { return true; }] +]); // -- // main chart @@ -1136,34 +1124,6 @@ nf.StatusHistory = (function () { init: function (timeOffset) { serverTimeOffset = timeOffset; -// initialize the time formats -timeFormats = [ -[d3.time.format(':%S.%L'), function (d) { -return d.getMilliseconds(); -}], -[d3.time.format(':%S'), function (d) { -return d.getSeconds(); -}], -[d3.time.format('%H:%M'), function (d) { -return d.getMinutes(); -}], -[d3.time.format('%H:%M'), function (d) { -return d.getHours(); -}], -[d3.time.format('%a %d'), function (d) { -return d.getDay() d.getDate() !== 1; -}], -[d3.time.format('%b %d'), function (d) { -return d.getDate() !== 1; -}], -[d3.time.format('%B'), function (d) { -return d.getMonth(); -}], -[d3.time.format('%Y'), function () { -return true; -}] -]; - nf.Common.addHoverEffect('#status-history-refresh-button', 'button-refresh', 'button-refresh-hover').click(function () { var statusHistory = $('#status-history-dialog').data('status-history'); if (statusHistory !== null) {
incubator-nifi git commit: NIFI-52: Created new implementation of PreparedQuery so that we can still prepare a query even if the expression is invalid
Repository: incubator-nifi Updated Branches: refs/heads/develop cce36335e - 8254b7543 NIFI-52: Created new implementation of PreparedQuery so that we can still prepare a query even if the expression is invalid Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/8254b754 Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/8254b754 Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/8254b754 Branch: refs/heads/develop Commit: 8254b75437a5b5a168259c7e46460ee3a7bc52f0 Parents: cce3633 Author: Mark Payne marka...@hotmail.com Authored: Wed Dec 10 11:47:00 2014 -0500 Committer: Mark Payne marka...@hotmail.com Committed: Wed Dec 10 11:47:00 2014 -0500 -- .../language/InvalidPreparedQuery.java | 71 .../attribute/expression/language/Query.java| 44 ++-- .../exception/IllegalAttributeException.java| 1 + 3 files changed, 96 insertions(+), 20 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/8254b754/commons/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/InvalidPreparedQuery.java -- diff --git a/commons/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/InvalidPreparedQuery.java b/commons/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/InvalidPreparedQuery.java new file mode 100644 index 000..e23bcc0 --- /dev/null +++ b/commons/nifi-expression-language/src/main/java/org/apache/nifi/attribute/expression/language/InvalidPreparedQuery.java @@ -0,0 +1,71 @@ +/* + * 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.attribute.expression.language; + +import java.util.Map; + +import org.apache.nifi.attribute.expression.language.exception.AttributeExpressionLanguageException; +import org.apache.nifi.expression.AttributeValueDecorator; +import org.apache.nifi.flowfile.FlowFile; +import org.apache.nifi.processor.exception.ProcessException; + + +/** + * An implementation of PreparedQuery that throws an {@link AttributeExpressionLanguageException} when attempting + * to evaluate the query. This allows a PreparedQuery to be created, even though it can't + * be evaluated. + */ +public class InvalidPreparedQuery implements PreparedQuery { +private final String query; +private final String explanation; + +public InvalidPreparedQuery(final String query, final String explanation) { +this.query = query; +this.explanation = explanation; +} + +@Override +public String evaluateExpressions(final FlowFile flowFile, final AttributeValueDecorator decorator) throws ProcessException { +throw new AttributeExpressionLanguageException(Invalid Expression: + query + due to + explanation); +} + +@Override +public String evaluateExpressions() throws ProcessException { +throw new AttributeExpressionLanguageException(Invalid Expression: + query + due to + explanation); +} + +@Override +public String evaluateExpressions(final AttributeValueDecorator decorator) throws ProcessException { +throw new AttributeExpressionLanguageException(Invalid Expression: + query + due to + explanation); +} + +@Override +public String evaluateExpressions(final FlowFile flowFile) throws ProcessException { +throw new AttributeExpressionLanguageException(Invalid Expression: + query + due to + explanation); +} + +@Override +public String evaluateExpressions(final MapString, String attributes) throws ProcessException { +throw new AttributeExpressionLanguageException(Invalid Expression: + query + due to + explanation); +} + +@Override +public String evaluateExpressions(final MapString, String attributes, final AttributeValueDecorator decorator) throws ProcessException { +throw new AttributeExpressionLanguageException(Invalid
[jira] [Resolved] (NIFI-52) Event-Driven Processors with scheduling period 0 ms do not commit session
[ https://issues.apache.org/jira/browse/NIFI-52?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Mark Payne resolved NIFI-52. Resolution: Fixed Event-Driven Processors with scheduling period 0 ms do not commit session --- Key: NIFI-52 URL: https://issues.apache.org/jira/browse/NIFI-52 Project: Apache NiFi Issue Type: Bug Components: Core Framework Reporter: Mark Payne Priority: Critical Fix For: 0.0.1 -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (NIFI-87) Configuration across nodes in a cluster should be identical including properties files and more
[ https://issues.apache.org/jira/browse/NIFI-87?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Mark Payne updated NIFI-87: --- Description: Currently each node must have different values in its nifi.properties file for the hostname nifi.web.http.host nifi.web.https.host nifi.cluster.node.address In order to be scalable it must be the case that all nodes can have the exact same configuration. this should be achived by removing any reference to the hostname frmo the properties file and instead use the name of the Network Interface (or interfaces) nifi.web.http.interfaces=etho0,eth1,... Generall in order to quickly scale up and down VMs will be used and it is considered acceptable to expect that all VM's should use the same NIC for comms. This means we must fully understand exactly how these properties are used. They are used in teh JettyServer class as well as in clustering. was: Currently each node must have different values in its nifi.properties file for the hostname nifi.web.http.host nifi.web.https.host nifi.cluster.node.address In order to be scalable it must be the case that all nodes can have teh exact same configuration. this should be achived by removing any reference to the hostname frmo the properties file and instead use the name of the Network Interface (or interfaces) nifi.web.http.interfaces=etho0,eth1,... Generall in order to quickly scale up and down VMs will be used and it is considered acceptable to expect that all VM's should use the same NIC for comms. This means we must fully understand exactly how these properties are used. They are used in teh JettyServer class as well as in clustering. Configuration across nodes in a cluster should be identical including properties files and more --- Key: NIFI-87 URL: https://issues.apache.org/jira/browse/NIFI-87 Project: Apache NiFi Issue Type: Improvement Components: Core Framework Reporter: Joseph Witt Currently each node must have different values in its nifi.properties file for the hostname nifi.web.http.host nifi.web.https.host nifi.cluster.node.address In order to be scalable it must be the case that all nodes can have the exact same configuration. this should be achived by removing any reference to the hostname frmo the properties file and instead use the name of the Network Interface (or interfaces) nifi.web.http.interfaces=etho0,eth1,... Generall in order to quickly scale up and down VMs will be used and it is considered acceptable to expect that all VM's should use the same NIC for comms. This means we must fully understand exactly how these properties are used. They are used in teh JettyServer class as well as in clustering. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Resolved] (NIFI-158) Unable to delete UpdateAttribute Processor when property is invalid
[ https://issues.apache.org/jira/browse/NIFI-158?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Mark Payne resolved NIFI-158. - Resolution: Fixed Unable to delete UpdateAttribute Processor when property is invalid --- Key: NIFI-158 URL: https://issues.apache.org/jira/browse/NIFI-158 Project: Apache NiFi Issue Type: Bug Components: Core Framework Affects Versions: 0.0.1 Reporter: Mark Payne Assignee: Mark Payne Fix For: 0.0.1 -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Resolved] (NIFI-12) If @OnRemoved throws Exception, remove from graph anyway
[ https://issues.apache.org/jira/browse/NIFI-12?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Mark Payne resolved NIFI-12. Resolution: Fixed If @OnRemoved throws Exception, remove from graph anyway Key: NIFI-12 URL: https://issues.apache.org/jira/browse/NIFI-12 Project: Apache NiFi Issue Type: Bug Components: Core Framework, Core UI Reporter: Joseph Witt Fix For: 0.0.1 Otherwise, if in cluster and some nodes throw Exception while others don't, then flows are now out of sync. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[05/28] incubator-nifi git commit: NIFIDEV-145: Bug fixes and pulled bootstrap into the assembly pom
NIFIDEV-145: Bug fixes and pulled bootstrap into the assembly pom Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/e544191f Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/e544191f Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/e544191f Branch: refs/heads/nifi-27 Commit: e544191f1d59dbaf9aec6e1bd708bbe013c6661a Parents: eed4a9b Author: Mark Payne marka...@hotmail.com Authored: Tue Dec 9 14:37:31 2014 -0500 Committer: Mark Payne marka...@hotmail.com Committed: Tue Dec 9 14:37:31 2014 -0500 -- assemblies/nifi/pom.xml | 5 + .../java/org/apache/nifi/bootstrap/RunNiFi.java | 22 +++- 2 files changed, 17 insertions(+), 10 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/e544191f/assemblies/nifi/pom.xml -- diff --git a/assemblies/nifi/pom.xml b/assemblies/nifi/pom.xml index ec06a23..556b8fe 100644 --- a/assemblies/nifi/pom.xml +++ b/assemblies/nifi/pom.xml @@ -120,6 +120,11 @@ version${framework.version}/version /dependency dependency + groupIdorg.apache.nifi/groupId + artifactIdnifi-bootstrap/artifactId + version0.0.1-SNAPSHOT/version +/dependency +dependency groupIdorg.apache.nifi/groupId artifactIdnifi-resources/artifactId version${framework.version}/version http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/e544191f/nifi-bootstrap/src/main/java/org/apache/nifi/bootstrap/RunNiFi.java -- diff --git a/nifi-bootstrap/src/main/java/org/apache/nifi/bootstrap/RunNiFi.java b/nifi-bootstrap/src/main/java/org/apache/nifi/bootstrap/RunNiFi.java index ea3e566..54932c8 100644 --- a/nifi-bootstrap/src/main/java/org/apache/nifi/bootstrap/RunNiFi.java +++ b/nifi-bootstrap/src/main/java/org/apache/nifi/bootstrap/RunNiFi.java @@ -30,7 +30,6 @@ import java.net.InetSocketAddress; import java.net.Socket; import java.nio.charset.StandardCharsets; import java.nio.file.Files; -import java.nio.file.Path; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -250,7 +249,13 @@ public class RunNiFi { builder.directory(new File(specifiedWorkingDir)); } - final File workingDir = builder.directory(); + final File bootstrapConfigAbsoluteFile = bootstrapConfigFile.getAbsoluteFile(); + final File binDir = bootstrapConfigAbsoluteFile.getParentFile(); + final File workingDir = binDir.getParentFile(); + + if ( specifiedWorkingDir == null ) { + builder.directory(workingDir); + } final String libFilename = replaceNull(props.get(lib.dir), ./lib).trim(); File libDir = getFile(libFilename, workingDir); @@ -295,13 +300,10 @@ public class RunNiFi { throw new RuntimeException(Could not find conf directory at + confDir.getAbsolutePath()); } - final Path workingDirPath = workingDir.toPath(); final ListString cpFiles = new ArrayList(confFiles.length + libFiles.length); cpFiles.add(confDir.getAbsolutePath()); for ( final File file : libFiles ) { - final Path path = workingDirPath.relativize(file.toPath()); - final String cpPath = path.toString(); - cpFiles.add(cpPath); + cpFiles.add(file.getAbsolutePath()); } final StringBuilder classPathBuilder = new StringBuilder(); @@ -380,12 +382,12 @@ public class RunNiFi { } private File getFile(final String filename, final File workingDir) { - File libDir = new File(filename); - if ( !libDir.isAbsolute() ) { - libDir = new File(workingDir, filename); + File file = new File(filename); + if ( !file.isAbsolute() ) { + file = new File(workingDir, filename); } - return libDir; + return file; } private String replaceNull(final String value, final String replacement) {
[02/28] incubator-nifi git commit: Merge branch 'develop' of https://git-wip-us.apache.org/repos/asf/incubator-nifi into develop
Merge branch 'develop' of https://git-wip-us.apache.org/repos/asf/incubator-nifi into develop Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/cb63c666 Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/cb63c666 Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/cb63c666 Branch: refs/heads/nifi-27 Commit: cb63c66602a398b0c14cc78732db5ca63e36a94c Parents: 567dfc7 0125f3d Author: Mark Payne marka...@hotmail.com Authored: Tue Dec 9 11:20:13 2014 -0500 Committer: Mark Payne marka...@hotmail.com Committed: Tue Dec 9 11:20:13 2014 -0500 -- nar-bundles/framework-bundle/framework/site-to-site/pom.xml | 4 nar-bundles/framework-bundle/pom.xml| 5 + 2 files changed, 9 insertions(+) --
[15/28] incubator-nifi git commit: NIFI-27: - Latest version of D3.
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/b61a1def/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/d3/d3.min.js -- diff --git a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/d3/d3.min.js b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/d3/d3.min.js old mode 100755 new mode 100644 index 862fcb2..ddaf546 --- a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/d3/d3.min.js +++ b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/d3/d3.min.js @@ -1,5385 +1,5 @@ -d3 = function () { -function n(n) { -return null != n !isNaN(n) -} -function t(n) { -return n.length -} -function e(n) { -for (var t = 1; n * t % 1; ) -t *= 10; -return t -} -function r(n, t) { -try { -for (var e in t) -Object.defineProperty(n.prototype, e, {value: t[e], enumerable: !1}) -} catch (r) { -n.prototype = t -} -} -function u() { -} -function i() { -} -function o(n, t, e) { -return function () { -var r = e.apply(t, arguments); -return r === t ? n : r -} -} -function a(n, t) { -if (t in n) -return t; -t = t.charAt(0).toUpperCase() + t.substring(1); -for (var e = 0, r = Co.length; r e; ++e) { -var u = Co[e] + t; -if (u in n) -return u -} -} -function c() { -} -function l() { -} -function s(n) { -function t() { -for (var t, r = e, u = -1, i = r.length; ++u i; ) -(t = r[u].on) t.apply(this, arguments); -return n -} -var e = [], r = new u; -return t.on = function (t, u) { -var i, o = r.get(t); -return arguments.length 2 ? o o.on : (o (o.on = null, e = e.slice(0, i = e.indexOf(o)).concat(e.slice(i + 1)), r.remove(t)), u e.push(r.set(t, {on: u})), n) -}, t -} -function f() { -vo.event.preventDefault() -} -function h() { -for (var n, t = vo.event; n = t.sourceEvent; ) -t = n; -return t -} -function g(n) { -for (var t = new l, e = 0, r = arguments.length; ++e r; ) -t[arguments[e]] = s(t); -return t.of = function (e, r) { -return function (u) { -try { -var i = u.sourceEvent = vo.event; -u.target = n, vo.event = u, t[u.type].apply(e, r) -} finally { -vo.event = i -} -} -}, t -} -function p(n) { -return jo(n, Oo), n -} -function d(n) { -returnfunction == typeof n ? n : function () { -return Lo(n, this) -} -} -function v(n) { -returnfunction == typeof n ? n : function () { -return Ho(n, this) -} -} -function m(n, t) { -function e() { -this.removeAttribute(n) -} -function r() { -this.removeAttributeNS(n.space, n.local) -} -function u() { -this.setAttribute(n, t) -} -function i() { -this.setAttributeNS(n.space, n.local, t) -} -function o() { -var e = t.apply(this, arguments); -null == e ? this.removeAttribute(n) : this.setAttribute(n, e) -} -function a() { -var e = t.apply(this, arguments); -null == e ? this.removeAttributeNS(n.space, n.local) : this.setAttributeNS(n.space, n.local, e) -} -return n = vo.ns.qualify(n), null == t ? n.local ? r : e : function == typeof t ? n.local ? a : o : n.local ? i : u -} -function y(n) { -return n.trim().replace(/\s+/g, ) -} -function M(n) { -return new RegExp((?:^|\\s+) + vo.requote(n) + (?:\\s+|$), g) -} -function x(n, t) { -function e() { -for (var e = -1; ++e u; ) -n[e](this, t) -} -function r() { -for (var e = -1, r = t.apply(this, arguments); ++e u; ) -n[e](this, r) -} -n = n.trim().split(/\s+/).map(b); -var u = n.length; -returnfunction == typeof t ? r : e -} -function b(n) { -var t = M(n); -return function (e, r) { -if (u = e.classList) -return r ? u.add(n) : u.remove(n); -var u = e.getAttribute(class) || ; -r ? (t.lastIndex = 0, t.test(u) || e.setAttribute(class, y(u + + n))) : e.setAttribute(class, y(u.replace(t, ))) -} -} -function _(n, t, e) { -function r() { -this.style.removeProperty(n)
[20/28] incubator-nifi git commit: NIFI-27: - Latest version of slickgrid.
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/53f44060/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/slick.editors.js -- diff --git a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/slick.editors.js b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/slick.editors.js index 2d8a482..04b20d2 100755 --- a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/slick.editors.js +++ b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/slick.editors.js @@ -5,508 +5,508 @@ */ (function ($) { -// register namespace -$.extend(true, window, { -Slick: { -Editors: { -Text: TextEditor, -Integer: IntegerEditor, -Date: DateEditor, -YesNoSelect: YesNoSelectEditor, -Checkbox: CheckboxEditor, -PercentComplete: PercentCompleteEditor, -LongText: LongTextEditor -} -} -}); - -function TextEditor(args) { -var $input; -var defaultValue; -var scope = this; - -this.init = function () { -$input = $(INPUT type=text class='editor-text' /) -.appendTo(args.container) -.bind(keydown.nav, function (e) { -if (e.keyCode === $.ui.keyCode.LEFT || e.keyCode === $.ui.keyCode.RIGHT) { -e.stopImmediatePropagation(); -} -}) -.focus() -.select(); -}; - -this.destroy = function () { -$input.remove(); -}; - -this.focus = function () { -$input.focus(); -}; - -this.getValue = function () { -return $input.val(); -}; - -this.setValue = function (val) { -$input.val(val); -}; - -this.loadValue = function (item) { -defaultValue = item[args.column.field] || ; -$input.val(defaultValue); -$input[0].defaultValue = defaultValue; -$input.select(); -}; - -this.serializeValue = function () { -return $input.val(); -}; - -this.applyValue = function (item, state) { -item[args.column.field] = state; -}; - -this.isValueChanged = function () { -return (!($input.val() == defaultValue == null)) ($input.val() != defaultValue); -}; - -this.validate = function () { -if (args.column.validator) { -var validationResults = args.column.validator($input.val()); -if (!validationResults.valid) { -return validationResults; -} -} - -return { -valid: true, -msg: null -}; -}; - -this.init(); -} - -function IntegerEditor(args) { -var $input; -var defaultValue; -var scope = this; - -this.init = function () { -$input = $(INPUT type=text class='editor-text' /); - -$input.bind(keydown.nav, function (e) { -if (e.keyCode === $.ui.keyCode.LEFT || e.keyCode === $.ui.keyCode.RIGHT) { -e.stopImmediatePropagation(); -} -}); - -$input.appendTo(args.container); -$input.focus().select(); -}; - -this.destroy = function () { -$input.remove(); -}; - -this.focus = function () { -$input.focus(); -}; - -this.loadValue = function (item) { -defaultValue = item[args.column.field]; -$input.val(defaultValue); -$input[0].defaultValue = defaultValue; -$input.select(); -}; - -this.serializeValue = function () { -return parseInt($input.val(), 10) || 0; -}; - -this.applyValue = function (item, state) { -item[args.column.field] = state; -}; - -this.isValueChanged = function () { -return (!($input.val() == defaultValue == null)) ($input.val() != defaultValue); -}; - -this.validate = function () { -if (isNaN($input.val())) { -return { -valid: false, -msg: Please enter a valid integer -}; -} - -return { -valid: true, -msg: null -}; -}; - -this.init(); -} - -function DateEditor(args) { -var $input; -var defaultValue; -var scope = this; -var
[25/28] incubator-nifi git commit: NIFI-27: - Latest version of codemirror.
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/9180b7d4/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/codemirror/lib/codemirror.css -- diff --git a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/codemirror/lib/codemirror.css b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/codemirror/lib/codemirror.css old mode 100755 new mode 100644 index 4de1393..e2d4ec2 --- a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/codemirror/lib/codemirror.css +++ b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/codemirror/lib/codemirror.css @@ -1,67 +1,97 @@ /* BASICS */ .CodeMirror { -/* Set height, width, borders, and global font properties here */ -font-family: monospace; -height: 300px; + /* Set height, width, borders, and global font properties here */ + font-family: monospace; + height: 300px; } .CodeMirror-scroll { -/* Set scrolling behaviour here */ -overflow: auto; + /* Set scrolling behaviour here */ + overflow: auto; } /* PADDING */ .CodeMirror-lines { -padding: 4px 0; /* Vertical padding around content */ + padding: 4px 0; /* Vertical padding around content */ } .CodeMirror pre { -padding: 0 4px; /* Horizontal padding of content */ + padding: 0 4px; /* Horizontal padding of content */ } .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler { -background-color: white; /* The little square between H and V scrollbars */ + background-color: white; /* The little square between H and V scrollbars */ } /* GUTTER */ .CodeMirror-gutters { -border-right: 1px solid #ddd; -background-color: #f7f7f7; -white-space: nowrap; + border-right: 1px solid #ddd; + background-color: #f7f7f7; + white-space: nowrap; } .CodeMirror-linenumbers {} .CodeMirror-linenumber { -padding: 0 3px 0 5px; -min-width: 20px; -text-align: right; -color: #999; --moz-box-sizing: content-box; -box-sizing: content-box; + padding: 0 3px 0 5px; + min-width: 20px; + text-align: right; + color: #999; + -moz-box-sizing: content-box; + box-sizing: content-box; } +.CodeMirror-guttermarker { color: black; } +.CodeMirror-guttermarker-subtle { color: #999; } + /* CURSOR */ .CodeMirror div.CodeMirror-cursor { -border-left: 1px solid black; + border-left: 1px solid black; } /* Shown when moving in bi-directional text */ .CodeMirror div.CodeMirror-secondarycursor { -border-left: 1px solid silver; + border-left: 1px solid silver; +} +.CodeMirror.cm-fat-cursor div.CodeMirror-cursor { + width: auto; + border: 0; + background: #7e7; +} +.CodeMirror.cm-fat-cursor div.CodeMirror-cursors { + z-index: 1; +} + +.cm-animate-fat-cursor { + width: auto; + border: 0; + -webkit-animation: blink 1.06s steps(1) infinite; + -moz-animation: blink 1.06s steps(1) infinite; + animation: blink 1.06s steps(1) infinite; +} +@-moz-keyframes blink { + 0% { background: #7e7; } + 50% { background: none; } + 100% { background: #7e7; } +} +@-webkit-keyframes blink { + 0% { background: #7e7; } + 50% { background: none; } + 100% { background: #7e7; } } -.CodeMirror.cm-keymap-fat-cursor div.CodeMirror-cursor { -width: auto; -border: 0; -background: #7e7; +@keyframes blink { + 0% { background: #7e7; } + 50% { background: none; } + 100% { background: #7e7; } } + /* Can style cursor different in overwrite (non-insert) mode */ div.CodeMirror-overwrite div.CodeMirror-cursor {} -.cm-tab { display: inline-block; } +.cm-tab { display: inline-block; text-decoration: inherit; } .CodeMirror-ruler { -border-left: 1px solid #ccc; -position: absolute; + border-left: 1px solid #ccc; + position: absolute; } /* DEFAULT THEME */ @@ -70,11 +100,12 @@ div.CodeMirror-overwrite div.CodeMirror-cursor {} .cm-s-default .cm-atom {color: #219;} .cm-s-default .cm-number {color: #164;} .cm-s-default .cm-def {color: #00f;} -.cm-s-default .cm-variable {color: black;} +.cm-s-default .cm-variable, +.cm-s-default .cm-punctuation, +.cm-s-default .cm-property, +.cm-s-default .cm-operator {} .cm-s-default .cm-variable-2 {color: #05a;} .cm-s-default .cm-variable-3 {color: #085;} -.cm-s-default .cm-property {color: black;} -.cm-s-default .cm-operator {color: black;} .cm-s-default .cm-comment {color: #a50;} .cm-s-default .cm-string {color: #a11;} .cm-s-default .cm-string-2 {color: #f50;} @@ -94,12 +125,16 @@ div.CodeMirror-overwrite div.CodeMirror-cursor {} .cm-header, .cm-strong {font-weight: bold;} .cm-em {font-style: italic;} .cm-link {text-decoration: underline;} +.cm-strikethrough {text-decoration: line-through;} .cm-s-default .cm-error {color: #f00;} .cm-invalidchar {color: #f00;} +/* Default styles for common addons */ + div.CodeMirror span.CodeMirror-matchingbracket {color: #0f0;} div.CodeMirror
[04/28] incubator-nifi git commit: NIFI-145: Added batch scripts and a simple bootstrap.conf file and fixed ShutdownHook to be Java 7 compliant
NIFI-145: Added batch scripts and a simple bootstrap.conf file and fixed ShutdownHook to be Java 7 compliant Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/eed4a9bb Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/eed4a9bb Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/eed4a9bb Branch: refs/heads/nifi-27 Commit: eed4a9bb810ceb5a366009c8379b06ed80b833f3 Parents: 6465704 Author: Mark Payne marka...@hotmail.com Authored: Tue Dec 9 13:51:15 2014 -0500 Committer: Mark Payne marka...@hotmail.com Committed: Tue Dec 9 13:51:15 2014 -0500 -- .../src/main/resources/bin/nifi-status.bat | 15 + .../src/main/resources/bin/start-nifi.bat | 15 + .../src/main/resources/bin/stop-nifi.bat| 15 + .../src/main/resources/conf/bootstrap.conf | 9 ++ .../org/apache/nifi/bootstrap/ShutdownHook.java | 33 +++- 5 files changed, 79 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/eed4a9bb/nar-bundles/framework-bundle/framework/resources/src/main/resources/bin/nifi-status.bat -- diff --git a/nar-bundles/framework-bundle/framework/resources/src/main/resources/bin/nifi-status.bat b/nar-bundles/framework-bundle/framework/resources/src/main/resources/bin/nifi-status.bat new file mode 100644 index 000..9b88349 --- /dev/null +++ b/nar-bundles/framework-bundle/framework/resources/src/main/resources/bin/nifi-status.bat @@ -0,0 +1,15 @@ +@echo off + +rem Use JAVA_HOME if it's set; otherwise, just use java +IF %JAVA_HOME%== (SET JAVA_EXE=java) ELSE (SET JAVA_EXE=%JAVA_HOME%\bin\java.exe) + +SET LIB_DIR=%~dp0..\lib +SET CONF_DIR=%~dp0..\conf + +SET BOOTSTRAP_CONF_FILE=%CONF_DIR%\bootstrap.conf +SET JAVA_ARGS=-Dorg.apache.nifi.boostrap.config.file=%BOOTSTRAP_CONF_FILE% + +SET JAVA_PARAMS=-cp %LIB_DIR%\nifi-bootstrap*.jar -Xms12m -Xmx24m %JAVA_ARGS% org.apache.nifi.bootstrap.RunNiFi +SET BOOTSTRAP_ACTION=status + +cmd.exe /C %JAVA_EXE% %JAVA_PARAMS% %BOOTSTRAP_ACTION% http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/eed4a9bb/nar-bundles/framework-bundle/framework/resources/src/main/resources/bin/start-nifi.bat -- diff --git a/nar-bundles/framework-bundle/framework/resources/src/main/resources/bin/start-nifi.bat b/nar-bundles/framework-bundle/framework/resources/src/main/resources/bin/start-nifi.bat new file mode 100644 index 000..c088672 --- /dev/null +++ b/nar-bundles/framework-bundle/framework/resources/src/main/resources/bin/start-nifi.bat @@ -0,0 +1,15 @@ +@echo off + +rem Use JAVA_HOME if it's set; otherwise, just use java +IF %JAVA_HOME%== (SET JAVA_EXE=java) ELSE (SET JAVA_EXE=%JAVA_HOME%\bin\java.exe) + +SET LIB_DIR=%~dp0..\lib +SET CONF_DIR=%~dp0..\conf + +SET BOOTSTRAP_CONF_FILE=%CONF_DIR%\bootstrap.conf +SET JAVA_ARGS=-Dorg.apache.nifi.boostrap.config.file=%BOOTSTRAP_CONF_FILE% + +SET JAVA_PARAMS=-cp %LIB_DIR%\nifi-bootstrap*.jar -Xms12m -Xmx24m %JAVA_ARGS% org.apache.nifi.bootstrap.RunNiFi +SET BOOTSTRAP_ACTION=start + +cmd.exe /C %JAVA_EXE% %JAVA_PARAMS% %BOOTSTRAP_ACTION% http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/eed4a9bb/nar-bundles/framework-bundle/framework/resources/src/main/resources/bin/stop-nifi.bat -- diff --git a/nar-bundles/framework-bundle/framework/resources/src/main/resources/bin/stop-nifi.bat b/nar-bundles/framework-bundle/framework/resources/src/main/resources/bin/stop-nifi.bat new file mode 100644 index 000..753b09f --- /dev/null +++ b/nar-bundles/framework-bundle/framework/resources/src/main/resources/bin/stop-nifi.bat @@ -0,0 +1,15 @@ +@echo off + +rem Use JAVA_HOME if it's set; otherwise, just use java +IF %JAVA_HOME%== (SET JAVA_EXE=java) ELSE (SET JAVA_EXE=%JAVA_HOME%\bin\java.exe) + +SET LIB_DIR=%~dp0..\lib +SET CONF_DIR=%~dp0..\conf + +SET BOOTSTRAP_CONF_FILE=%CONF_DIR%\bootstrap.conf +SET JAVA_ARGS=-Dorg.apache.nifi.boostrap.config.file=%BOOTSTRAP_CONF_FILE% + +SET JAVA_PARAMS=-cp %LIB_DIR%\nifi-bootstrap*.jar -Xms12m -Xmx24m %JAVA_ARGS% org.apache.nifi.bootstrap.RunNiFi +SET BOOTSTRAP_ACTION=stop + +cmd.exe /C %JAVA_EXE% %JAVA_PARAMS% %BOOTSTRAP_ACTION% http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/eed4a9bb/nar-bundles/framework-bundle/framework/resources/src/main/resources/conf/bootstrap.conf -- diff --git a/nar-bundles/framework-bundle/framework/resources/src/main/resources/conf/bootstrap.conf b/nar-bundles/framework-bundle/framework/resources/src/main/resources/conf/bootstrap.conf new file
[01/28] incubator-nifi git commit: NIFI-145: Initial commit of bootstrap module
Repository: incubator-nifi Updated Branches: refs/heads/nifi-27 fef807136 - 2f2474efb NIFI-145: Initial commit of bootstrap module Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/567dfc79 Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/567dfc79 Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/567dfc79 Branch: refs/heads/nifi-27 Commit: 567dfc794c565854850b7e223601528f2a3fd814 Parents: 203e83e Author: Mark Payne marka...@hotmail.com Authored: Tue Dec 9 08:48:07 2014 -0500 Committer: Mark Payne marka...@hotmail.com Committed: Tue Dec 9 08:48:07 2014 -0500 -- .gitignore | 1 + nifi-bootstrap/pom.xml | 18 ++ .../java/org/apache/nifi/bootstrap/RunNiFi.java | 176 +++ .../org/apache/nifi/bootstrap/ShutdownHook.java | 14 ++ 4 files changed, 209 insertions(+) -- http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/567dfc79/.gitignore -- diff --git a/.gitignore b/.gitignore index f026df6..6d4eca9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ target .project .settings +.classpath nbactions.xml .DS_Store http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/567dfc79/nifi-bootstrap/pom.xml -- diff --git a/nifi-bootstrap/pom.xml b/nifi-bootstrap/pom.xml new file mode 100644 index 000..b620c84 --- /dev/null +++ b/nifi-bootstrap/pom.xml @@ -0,0 +1,18 @@ +project xmlns=http://maven.apache.org/POM/4.0.0; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; + xsi:schemaLocation=http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd; + modelVersion4.0.0/modelVersion + + parent + groupIdorg.apache.nifi/groupId + artifactIdnifi-parent/artifactId + version0.0.1-SNAPSHOT/version + /parent + + artifactIdnifi-bootstrap/artifactId + packagingjar/packaging + + namenifi-bootstrap/name + + dependencies + /dependencies +/project http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/567dfc79/nifi-bootstrap/src/main/java/org/apache/nifi/bootstrap/RunNiFi.java -- diff --git a/nifi-bootstrap/src/main/java/org/apache/nifi/bootstrap/RunNiFi.java b/nifi-bootstrap/src/main/java/org/apache/nifi/bootstrap/RunNiFi.java new file mode 100644 index 000..afa1f47 --- /dev/null +++ b/nifi-bootstrap/src/main/java/org/apache/nifi/bootstrap/RunNiFi.java @@ -0,0 +1,176 @@ +package org.apache.nifi.bootstrap; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.FilenameFilter; +import java.io.IOException; +import java.nio.file.Path; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Properties; + + +/** + * Bootstrap class to run Apache NiFi. + * + * This class looks for the bootstrap.conf file by looking in the following places (in order): + * ol + * liFirst argument to the program/li + * liJava System Property named {@code org.apache.nifi.bootstrap.config.file}/li + * li${NIFI_HOME}/./conf/bootstrap.conf, where ${NIFI_HOME} references an environment variable {@code NIFI_HOME}/li + * li./conf/bootstrap.conf, where {@code .} represents the working directory. + * /ol + * + * If the {@code bootstrap.conf} file cannot be found, throws a {@code FileNotFoundException]. + */ +public class RunNiFi { + public static final String DEFAULT_CONFIG_FILE = ./conf/boostrap.conf; + public static final String DEFAULT_NIFI_PROPS_FILE = ./conf/nifi.properties; + + @SuppressWarnings({ rawtypes, unchecked }) + public static void main(final String[] args) throws IOException, InterruptedException { + final ProcessBuilder builder = new ProcessBuilder(); + + String configFilename = (args.length 0) ? args[0] : System.getProperty(org.apache.nifi.boostrap.config.file); + + if ( configFilename == null ) { + final String nifiHome = System.getenv(NIFI_HOME); + if ( nifiHome != null ) { + final File nifiHomeFile = new File(nifiHome.trim()); + final File configFile = new File(nifiHomeFile, DEFAULT_CONFIG_FILE); + configFilename = configFile.getAbsolutePath(); + } + } + + if ( configFilename == null ) { + configFilename =
[24/28] incubator-nifi git commit: NIFI-27: - Latest version of codemirror.
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/9180b7d4/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/codemirror/lib/codemirror.js -- diff --git a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/codemirror/lib/codemirror.js b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/codemirror/lib/codemirror.js deleted file mode 100755 index a085720..000 --- a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/codemirror/lib/codemirror.js +++ /dev/null @@ -1,8488 +0,0 @@ -// This is CodeMirror (http://codemirror.net), a code editor -// implemented in JavaScript on top of the browser's DOM. -// -// You can find some technical background for some of the code below -// at http://marijnhaverbeke.nl/blog/#cm-internals . - -(function (mod) { -if (typeof exports == object typeof module == object) // CommonJS -module.exports = mod(); -else if (typeof define == function define.amd) // AMD -return define([], mod); -else // Plain browser env -this.CodeMirror = mod(); -})(function () { -use strict; - -// BROWSER SNIFFING - -// Kludges for bugs and behavior differences that can't be feature -// detected are enabled based on userAgent etc sniffing. - -var gecko = /gecko\/\d/i.test(navigator.userAgent); -// ie_uptoN means Internet Explorer version N or lower -var ie_upto10 = /MSIE \d/.test(navigator.userAgent); -var ie_upto7 = ie_upto10 (document.documentMode == null || document.documentMode 8); -var ie_upto8 = ie_upto10 (document.documentMode == null || document.documentMode 9); -var ie_upto9 = ie_upto10 (document.documentMode == null || document.documentMode 10); -var ie_11up = /Trident\/([7-9]|\d{2,})\./.test(navigator.userAgent); -var ie = ie_upto10 || ie_11up; -var webkit = /WebKit\//.test(navigator.userAgent); -var qtwebkit = webkit /Qt\/\d+\.\d+/.test(navigator.userAgent); -var chrome = /Chrome\//.test(navigator.userAgent); -var presto = /Opera\//.test(navigator.userAgent); -var safari = /Apple Computer/.test(navigator.vendor); -var khtml = /KHTML\//.test(navigator.userAgent); -var mac_geLion = /Mac OS X 1\d\D([7-9]|\d\d)\D/.test(navigator.userAgent); -var mac_geMountainLion = /Mac OS X 1\d\D([8-9]|\d\d)\D/.test(navigator.userAgent); -var phantom = /PhantomJS/.test(navigator.userAgent); - -var ios = /AppleWebKit/.test(navigator.userAgent) /Mobile\/\w+/.test(navigator.userAgent); -// This is woefully incomplete. Suggestions for alternative methods welcome. -var mobile = ios || /Android|webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(navigator.userAgent); -var mac = ios || /Mac/.test(navigator.platform); -var windows = /win/i.test(navigator.platform); - -var presto_version = presto navigator.userAgent.match(/Version\/(\d*\.\d*)/); -if (presto_version) -presto_version = Number(presto_version[1]); -if (presto_version presto_version = 15) { -presto = false; -webkit = true; -} -// Some browsers use the wrong event properties to signal cmd/ctrl on OS X -var flipCtrlCmd = mac (qtwebkit || presto (presto_version == null || presto_version 12.11)); -var captureRightClick = gecko || (ie !ie_upto8); - -// Optimize some code when these features are not used. -var sawReadOnlySpans = false, sawCollapsedSpans = false; - -// EDITOR CONSTRUCTOR - -// A CodeMirror instance represents an editor. This is the object -// that user code is usually dealing with. - -function CodeMirror(place, options) { -if (!(this instanceof CodeMirror)) -return new CodeMirror(place, options); - -this.options = options = options || {}; -// Determine effective options based on given values and defaults. -for (var opt in defaults) -if (!options.hasOwnProperty(opt)) -options[opt] = defaults[opt]; -setGuttersForLineNumbers(options); - -var doc = options.value; -if (typeof doc == string) -doc = new Doc(doc, options.mode); -this.doc = doc; - -var display = this.display = new Display(place, doc); -display.wrapper.CodeMirror = this; -updateGutters(this); -themeChanged(this); -if (options.lineWrapping) -this.display.wrapper.className += CodeMirror-wrap; -if (options.autofocus !mobile) -focusInput(this); - -this.state = { -keyMaps: [], // stores maps added by addKeyMap -overlays: [], // highlighting overlays, as added by addOverlay -modeGen: 0, // bumped when mode/overlay changes, used to invalidate highlighting info -overwrite: false, focused: false, -suppressEdits: false, // used to
[28/28] incubator-nifi git commit: Merge branch 'nifi-27' of https://git-wip-us.apache.org/repos/asf/incubator-nifi into nifi-27
Merge branch 'nifi-27' of https://git-wip-us.apache.org/repos/asf/incubator-nifi into nifi-27 Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/2f2474ef Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/2f2474ef Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/2f2474ef Branch: refs/heads/nifi-27 Commit: 2f2474efbc20f07a5ee2ce10ce48954f4854146e Parents: 9180b7d fef8071 Author: Matt Gilman matt.c.gil...@gmail.com Authored: Wed Dec 10 12:58:18 2014 -0500 Committer: Matt Gilman matt.c.gil...@gmail.com Committed: Wed Dec 10 12:58:18 2014 -0500 -- --
[18/28] incubator-nifi git commit: NIFI-27: - Latest version of qtip2.
NIFI-27: - Latest version of qtip2. Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/57b4178f Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/57b4178f Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/57b4178f Branch: refs/heads/nifi-27 Commit: 57b4178f19960bb4359d79f462c6e790e3e8f1a1 Parents: f60a97b Author: Matt Gilman matt.c.gil...@gmail.com Authored: Wed Dec 10 08:35:31 2014 -0500 Committer: Matt Gilman matt.c.gil...@gmail.com Committed: Wed Dec 10 12:19:26 2014 -0500 -- .../webapp/WEB-INF/pages/bulletin-board.jsp | 2 +- .../src/main/webapp/WEB-INF/pages/canvas.jsp| 2 +- .../src/main/webapp/WEB-INF/pages/cluster.jsp | 2 +- .../src/main/webapp/WEB-INF/pages/counters.jsp | 2 +- .../src/main/webapp/WEB-INF/pages/history.jsp | 2 +- .../main/webapp/WEB-INF/pages/provenance.jsp| 2 +- .../src/main/webapp/WEB-INF/pages/summary.jsp | 2 +- .../src/main/webapp/WEB-INF/pages/templates.jsp | 2 +- .../src/main/webapp/WEB-INF/pages/users.jsp | 2 +- .../main/webapp/js/jquery/qtip2/jquery.qtip.css | 557 --- .../webapp/js/jquery/qtip2/jquery.qtip.min.css | 3 + .../webapp/js/jquery/qtip2/jquery.qtip.min.js | 711 +-- 12 files changed, 17 insertions(+), 1272 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/57b4178f/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/bulletin-board.jsp -- diff --git a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/bulletin-board.jsp b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/bulletin-board.jsp index 8669f6c..083862d 100644 --- a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/bulletin-board.jsp +++ b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/bulletin-board.jsp @@ -24,7 +24,7 @@ ${nf.bulletin.board.style.tags} link rel=stylesheet href=js/jquery/combo/jquery.combo.css?${project.version} type=text/css / link rel=stylesheet href=js/jquery/modal/jquery.modal.css?${project.version} type=text/css / -link rel=stylesheet href=js/jquery/qtip2/jquery.qtip.css? type=text/css / +link rel=stylesheet href=js/jquery/qtip2/jquery.qtip.min.css? type=text/css / link rel=stylesheet href=js/jquery/css/smoothness/jquery-ui-1.8.10.custom.css type=text/css / script type=text/javascript src=js/jquery/jquery-1.7.min.js/script script type=text/javascript src=js/jquery/jquery.center.js/script http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/57b4178f/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/canvas.jsp -- diff --git a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/canvas.jsp b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/canvas.jsp index acdd147..c8f2ff7 100644 --- a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/canvas.jsp +++ b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/canvas.jsp @@ -28,7 +28,7 @@ link rel=stylesheet href=js/jquery/tabbs/jquery.tabbs.css?${project.version} type=text/css / link rel=stylesheet href=js/jquery/combo/jquery.combo.css?${project.version} type=text/css / link rel=stylesheet href=js/jquery/modal/jquery.modal.css?${project.version} type=text/css / -link rel=stylesheet href=js/jquery/qtip2/jquery.qtip.css? type=text/css / +link rel=stylesheet href=js/jquery/qtip2/jquery.qtip.min.css? type=text/css / link rel=stylesheet href=js/jquery/css/smoothness/jquery-ui-1.8.10.custom.css type=text/css / link rel=stylesheet href=js/jquery/minicolors/jquery.minicolors.css type=text/css / link rel=stylesheet href=js/jquery/slickgrid/css/slick.grid.css type=text/css / http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/57b4178f/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/cluster.jsp -- diff --git a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/cluster.jsp b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/cluster.jsp index 33fdbb0..e3e7b86 100644 --- a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/WEB-INF/pages/cluster.jsp +++
[08/28] incubator-nifi git commit: Merge branch 'develop' of https://git-wip-us.apache.org/repos/asf/incubator-nifi into develop
Merge branch 'develop' of https://git-wip-us.apache.org/repos/asf/incubator-nifi into develop Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/5ebf3b51 Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/5ebf3b51 Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/5ebf3b51 Branch: refs/heads/nifi-27 Commit: 5ebf3b51cd7a51ed52ac38c37797b5268129d633 Parents: cb63c66 2735c6c Author: Mark Payne marka...@hotmail.com Authored: Wed Dec 10 11:08:10 2014 -0500 Committer: Mark Payne marka...@hotmail.com Committed: Wed Dec 10 11:08:10 2014 -0500 -- .../resources/src/main/resources/bin/nifi.sh| 16 +++- .../web/controller/StandardSearchContext.java | 18 +--- .../accesscontrol/DfmAccessControlTest.java | 26 +- .../src/main/webapp/js/nf/canvas/nf-canvas.js | 95 ++-- .../main/webapp/js/nf/canvas/nf-connectable.js | 8 +- .../main/webapp/js/nf/canvas/nf-draggable.js| 49 ++ .../js/nf/canvas/nf-processor-property-table.js | 10 +-- .../main/webapp/js/nf/canvas/nf-selectable.js | 6 +- .../main/webapp/js/nf/nf-processor-details.js | 16 ++-- 9 files changed, 142 insertions(+), 102 deletions(-) --
[11/28] incubator-nifi git commit: NIFI-54: When incrementing active thread count, if the value exceeds max, do not run
NIFI-54: When incrementing active thread count, if the value exceeds max, do not run Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/97f8ab0c Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/97f8ab0c Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/97f8ab0c Branch: refs/heads/nifi-27 Commit: 97f8ab0cc50f77a2ff3a4e9d575ec05c185e5b80 Parents: 8254b75 Author: Mark Payne marka...@hotmail.com Authored: Wed Dec 10 11:57:33 2014 -0500 Committer: Mark Payne marka...@hotmail.com Committed: Wed Dec 10 11:57:33 2014 -0500 -- .../scheduling/EventDrivenSchedulingAgent.java | 24 ++-- .../controller/scheduling/ScheduleState.java| 8 +++ 2 files changed, 26 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/97f8ab0c/nar-bundles/framework-bundle/framework/core/src/main/java/org/apache/nifi/controller/scheduling/EventDrivenSchedulingAgent.java -- diff --git a/nar-bundles/framework-bundle/framework/core/src/main/java/org/apache/nifi/controller/scheduling/EventDrivenSchedulingAgent.java b/nar-bundles/framework-bundle/framework/core/src/main/java/org/apache/nifi/controller/scheduling/EventDrivenSchedulingAgent.java index 5b237ff..af801bb 100644 --- a/nar-bundles/framework-bundle/framework/core/src/main/java/org/apache/nifi/controller/scheduling/EventDrivenSchedulingAgent.java +++ b/nar-bundles/framework-bundle/framework/core/src/main/java/org/apache/nifi/controller/scheduling/EventDrivenSchedulingAgent.java @@ -263,7 +263,17 @@ public class EventDrivenSchedulingAgent implements SchedulingAgent { } private void trigger(final Connectable worker, final ScheduleState scheduleState, final ConnectableProcessContext processContext, final ProcessSessionFactory sessionFactory) { -scheduleState.incrementActiveThreadCount(); +final int newThreadCount = scheduleState.incrementActiveThreadCount(); +if (newThreadCount worker.getMaxConcurrentTasks() worker.getMaxConcurrentTasks() 0) { + // its possible that the worker queue could give us a worker node that is eligible to run based + // on the number of threads but another thread has already incremented the thread count, result in + // reaching the maximum number of threads. we won't know this until we atomically increment the thread count + // on the Schedule State, so we check it here. in this case, we cannot trigger the Processor, as doing so would + // result in using more than the maximum number of defined threads + scheduleState.decrementActiveThreadCount(); + return; +} + try { try (final AutoCloseable ncl = NarCloseable.withNarLoader()) { worker.onTrigger(processContext, sessionFactory); @@ -293,7 +303,17 @@ public class EventDrivenSchedulingAgent implements SchedulingAgent { } private void trigger(final ProcessorNode worker, final ProcessContext context, final ScheduleState scheduleState, final StandardProcessContext processContext, final ProcessSessionFactory sessionFactory) { -scheduleState.incrementActiveThreadCount(); +final int newThreadCount = scheduleState.incrementActiveThreadCount(); +if (newThreadCount worker.getMaxConcurrentTasks() worker.getMaxConcurrentTasks() 0) { + // its possible that the worker queue could give us a worker node that is eligible to run based + // on the number of threads but another thread has already incremented the thread count, result in + // reaching the maximum number of threads. we won't know this until we atomically increment the thread count + // on the Schedule State, so we check it here. in this case, we cannot trigger the Processor, as doing so would + // result in using more than the maximum number of defined threads + scheduleState.decrementActiveThreadCount(); + return; +} + try { try (final AutoCloseable ncl = NarCloseable.withNarLoader()) { worker.onTrigger(processContext, sessionFactory); http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/97f8ab0c/nar-bundles/framework-bundle/framework/core/src/main/java/org/apache/nifi/controller/scheduling/ScheduleState.java -- diff --git
[21/28] incubator-nifi git commit: NIFI-27: - Latest version of slickgrid.
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/53f44060/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/slick.dataview.js -- diff --git a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/slick.dataview.js b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/slick.dataview.js index 07f5900..f1c1b5e 100755 --- a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/slick.dataview.js +++ b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/jquery/slickgrid/slick.dataview.js @@ -1,914 +1,1126 @@ (function ($) { -$.extend(true, window, { -Slick: { -Data: { -DataView: DataView, -Aggregators: { -Avg: AvgAggregator, -Min: MinAggregator, -Max: MaxAggregator, -Sum: SumAggregator -} -} + $.extend(true, window, { +Slick: { + Data: { +DataView: DataView, +Aggregators: { + Avg: AvgAggregator, + Min: MinAggregator, + Max: MaxAggregator, + Sum: SumAggregator } -}); - + } +} + }); + + + /*** + * A sample Model implementation. + * Provides a filtered view of the underlying data. + * + * Relies on the data item having an id property uniquely identifying it. + */ + function DataView(options) { +var self = this; + +var defaults = { + groupItemMetadataProvider: null, + inlineFilters: false +}; + + +// private +var idProperty = id; // property holding a unique row id +var items = []; // data by index +var rows = []; // data by row +var idxById = {}; // indexes by id +var rowsById = null;// rows by id; lazy-calculated +var filter = null; // filter function +var updated = null; // updated item ids +var suspend = false;// suspends the recalculation +var sortAsc = true; +var fastSortField; +var sortComparer; +var refreshHints = {}; +var prevRefreshHints = {}; +var filterArgs; +var filteredItems = []; +var compiledFilter; +var compiledFilterWithCaching; +var filterCache = []; + +// grouping +var groupingInfoDefaults = { + getter: null, + formatter: null, + comparer: function(a, b) { return a.value - b.value; }, + predefinedValues: [], + aggregators: [], + aggregateEmpty: false, + aggregateCollapsed: false, + aggregateChildGroups: false, + collapsed: false, + displayTotalsRow: true, + lazyTotalsCalculation: false +}; +var groupingInfos = []; +var groups = []; +var toggledGroupsByLevel = []; +var groupingDelimiter = ':|:'; + +var pagesize = 0; +var pagenum = 0; +var totalRows = 0; + +// events +var onRowCountChanged = new Slick.Event(); +var onRowsChanged = new Slick.Event(); +var onPagingInfoChanged = new Slick.Event(); + +options = $.extend(true, {}, defaults, options); + + +function beginUpdate() { + suspend = true; +} + +function endUpdate() { + suspend = false; + refresh(); +} + +function setRefreshHints(hints) { + refreshHints = hints; +} + +function setFilterArgs(args) { + filterArgs = args; +} + +function updateIdxById(startingIndex) { + startingIndex = startingIndex || 0; + var id; + for (var i = startingIndex, l = items.length; i l; i++) { +id = items[i][idProperty]; +if (id === undefined) { + throw Each data element must implement a unique 'id' property; +} +idxById[id] = i; + } +} + +function ensureIdUniqueness() { + var id; + for (var i = 0, l = items.length; i l; i++) { +id = items[i][idProperty]; +if (id === undefined || idxById[id] !== i) { + throw Each data element must implement a unique 'id' property; +} + } +} + +function getItems() { + return items; +} + +function setItems(data, objectIdProperty) { + if (objectIdProperty !== undefined) { +idProperty = objectIdProperty; + } + items = filteredItems = data; + idxById = {}; + updateIdxById(); + ensureIdUniqueness(); + refresh(); +} + +function setPagingOptions(args) { + if (args.pageSize != undefined) { +pagesize = args.pageSize; +pagenum = pagesize ? Math.min(pagenum, Math.max(0, Math.ceil(totalRows / pagesize) - 1)) : 0; + } + + if (args.pageNum != undefined) { +pagenum = Math.min(args.pageNum, Math.max(0, Math.ceil(totalRows / pagesize) - 1)); + } + + onPagingInfoChanged.notify(getPagingInfo(),
[10/17] incubator-nifi git commit: NIFI-27: - Latest version of D3.
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/8a0e2cee/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/nf/nf-status-history.js -- diff --git a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/nf/nf-status-history.js b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/nf/nf-status-history.js index f570082..178207e 100644 --- a/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/nf/nf-status-history.js +++ b/nar-bundles/framework-bundle/framework/web/nifi-web-ui/src/main/webapp/js/nf/nf-status-history.js @@ -60,13 +60,6 @@ nf.StatusHistory = (function () { }; /** - * version 3.4+ of D3 provides a mechanism for specifying - * a number of custom formatters. this achieves similar function - * until we're able to upgrade. - */ -var timeFormats = null; - -/** * The time offset of the server. */ var serverTimeOffset = null; @@ -373,26 +366,21 @@ nf.StatusHistory = (function () { visible: instances[instance.id] === true }); }); - + // -- // custom time axis formatter // -- -// create the formatting function -var customTimeFormat = function (d) { -var formatter; - -// identify the most appropriate formatter for this date -$.each(timeFormats, function (_, timeFormat) { -if (timeFormat[1](d)) { -formatter = timeFormat; -return false; -} -}); - -// return the formatter date -return formatter[0](d); -}; +var customTimeFormat = d3.time.format.multi([ +[':%S.%L', function (d) { return d.getMilliseconds(); }], +[':%S', function (d) { return d.getSeconds(); }], +['%H:%M', function (d) { return d.getMinutes(); }], +['%H:%M', function (d) { return d.getHours(); }], +['%a %d', function (d) { return d.getDay() d.getDate() !== 1; }], +['%b %d', function (d) { return d.getDate() !== 1; }], +['%B', function (d) { return d.getMonth(); }], +['%Y', function () { return true; }] +]); // -- // main chart @@ -1136,34 +1124,6 @@ nf.StatusHistory = (function () { init: function (timeOffset) { serverTimeOffset = timeOffset; -// initialize the time formats -timeFormats = [ -[d3.time.format(':%S.%L'), function (d) { -return d.getMilliseconds(); -}], -[d3.time.format(':%S'), function (d) { -return d.getSeconds(); -}], -[d3.time.format('%H:%M'), function (d) { -return d.getMinutes(); -}], -[d3.time.format('%H:%M'), function (d) { -return d.getHours(); -}], -[d3.time.format('%a %d'), function (d) { -return d.getDay() d.getDate() !== 1; -}], -[d3.time.format('%b %d'), function (d) { -return d.getDate() !== 1; -}], -[d3.time.format('%B'), function (d) { -return d.getMonth(); -}], -[d3.time.format('%Y'), function () { -return true; -}] -]; - nf.Common.addHoverEffect('#status-history-refresh-button', 'button-refresh', 'button-refresh-hover').click(function () { var statusHistory = $('#status-history-dialog').data('status-history'); if (statusHistory !== null) {