You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by jo...@apache.org on 2015/04/22 17:46:44 UTC

[01/11] incubator-nifi git commit: NIFI-271 checkpoint

Repository: incubator-nifi
Updated Branches:
  refs/heads/NIFI-271 b612b6bcd -> 888254b2a


http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/repository/TestStandardProcessSession.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/repository/TestStandardProcessSession.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/repository/TestStandardProcessSession.java
index ca68725..3486875 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/repository/TestStandardProcessSession.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/repository/TestStandardProcessSession.java
@@ -257,7 +257,7 @@ public class TestStandardProcessSession {
             Assert.assertEquals(FlowFileAccessException.class, ex.getClass());
         }
     }
-    
+
     private void assertDisabled(final InputStream inputStream) {
         try {
             inputStream.read();
@@ -289,8 +289,8 @@ public class TestStandardProcessSession {
         } catch (final Exception ex) {
             Assert.assertEquals(FlowFileAccessException.class, ex.getClass());
         }
-    }    
-    
+    }
+
     @Test
     public void testAppendAfterSessionClosesStream() throws IOException {
         final ContentClaim claim = contentRepo.create(false);
@@ -355,7 +355,7 @@ public class TestStandardProcessSession {
         });
         assertDisabled(inputStreamHolder.get());
         assertDisabled(outputStreamHolder.get());
-   }
+    }
 
     @Test
     public void testWriteAfterSessionClosesStream() throws IOException {
@@ -426,7 +426,6 @@ public class TestStandardProcessSession {
         assertEquals(0, provenanceRepo.getEvents(0L, 100000).size());
     }
 
-    
     @Test
     public void testProvenanceEventsEmittedForForkIfNotRemoved() throws IOException {
         final FlowFileRecord flowFileRecord = new StandardFlowFileRecord.Builder()
@@ -466,59 +465,59 @@ public class TestStandardProcessSession {
     @Test
     public void testUpdateAttributesThenJoin() throws IOException {
         final FlowFileRecord flowFileRecord1 = new StandardFlowFileRecord.Builder()
-            .id(1L)
-            .addAttribute("uuid", "11111111-1111-1111-1111-111111111111")
-            .entryDate(System.currentTimeMillis())
-            .build();
-        
+                .id(1L)
+                .addAttribute("uuid", "11111111-1111-1111-1111-111111111111")
+                .entryDate(System.currentTimeMillis())
+                .build();
+
         final FlowFileRecord flowFileRecord2 = new StandardFlowFileRecord.Builder()
-            .id(2L)
-            .addAttribute("uuid", "22222222-2222-2222-2222-222222222222")
-            .entryDate(System.currentTimeMillis())
-            .build();
-        
+                .id(2L)
+                .addAttribute("uuid", "22222222-2222-2222-2222-222222222222")
+                .entryDate(System.currentTimeMillis())
+                .build();
+
         flowFileQueue.put(flowFileRecord1);
         flowFileQueue.put(flowFileRecord2);
-        
+
         FlowFile ff1 = session.get();
         FlowFile ff2 = session.get();
 
         ff1 = session.putAttribute(ff1, "index", "1");
         ff2 = session.putAttribute(ff2, "index", "2");
-        
+
         final List<FlowFile> parents = new ArrayList<>(2);
         parents.add(ff1);
         parents.add(ff2);
-        
+
         final FlowFile child = session.create(parents);
-        
+
         final Relationship rel = new Relationship.Builder().name("A").build();
-        
+
         session.transfer(ff1, rel);
         session.transfer(ff2, rel);
         session.transfer(child, rel);
-        
+
         session.commit();
-        
+
         final List<ProvenanceEventRecord> events = provenanceRepo.getEvents(0L, 1000);
 
         // We should have a JOIN and 2 ATTRIBUTE_MODIFIED's
         assertEquals(3, events.size());
-        
+
         int joinCount = 0;
         int ff1UpdateCount = 0;
         int ff2UpdateCount = 0;
-        
-        for ( final ProvenanceEventRecord event : events ) {
+
+        for (final ProvenanceEventRecord event : events) {
             switch (event.getEventType()) {
                 case JOIN:
                     assertEquals(child.getAttribute("uuid"), event.getFlowFileUuid());
                     joinCount++;
                     break;
                 case ATTRIBUTES_MODIFIED:
-                    if ( event.getFlowFileUuid().equals(ff1.getAttribute("uuid")) ) {
+                    if (event.getFlowFileUuid().equals(ff1.getAttribute("uuid"))) {
                         ff1UpdateCount++;
-                    } else if ( event.getFlowFileUuid().equals(ff2.getAttribute("uuid")) ) {
+                    } else if (event.getFlowFileUuid().equals(ff2.getAttribute("uuid"))) {
                         ff2UpdateCount++;
                     } else {
                         Assert.fail("Got ATTRIBUTE_MODIFIED for wrong FlowFile: " + event.getFlowFileUuid());
@@ -528,14 +527,14 @@ public class TestStandardProcessSession {
                     Assert.fail("Unexpected event type: " + event);
             }
         }
-        
+
         assertEquals(1, joinCount);
         assertEquals(1, ff1UpdateCount);
         assertEquals(1, ff2UpdateCount);
-        
+
         assertEquals(1, joinCount);
     }
-    
+
     @Test
     public void testForkOneToOneReported() throws IOException {
         final FlowFileRecord flowFileRecord = new StandardFlowFileRecord.Builder()
@@ -845,34 +844,34 @@ public class TestStandardProcessSession {
     @Test
     public void testContentNotFoundExceptionThrownWhenUnableToReadDataOffsetTooLarge() {
         final FlowFileRecord flowFileRecord = new StandardFlowFileRecord.Builder()
-            .addAttribute("uuid", "12345678-1234-1234-1234-123456789012")
-            .entryDate(System.currentTimeMillis())
-            .contentClaim(new ContentClaim() {
-                @Override
-                public int compareTo(ContentClaim arg0) {
-                    return 0;
-                }
-    
-                @Override
-                public String getId() {
-                    return "0";
-                }
-    
-                @Override
-                public String getContainer() {
-                    return "container";
-                }
-    
-                @Override
-                public String getSection() {
-                    return "section";
-                }
-    
-                @Override
-                public boolean isLossTolerant() {
-                    return true;
-                }
-            }).build();
+                .addAttribute("uuid", "12345678-1234-1234-1234-123456789012")
+                .entryDate(System.currentTimeMillis())
+                .contentClaim(new ContentClaim() {
+                    @Override
+                    public int compareTo(ContentClaim arg0) {
+                        return 0;
+                    }
+
+                    @Override
+                    public String getId() {
+                        return "0";
+                    }
+
+                    @Override
+                    public String getContainer() {
+                        return "container";
+                    }
+
+                    @Override
+                    public String getSection() {
+                        return "section";
+                    }
+
+                    @Override
+                    public boolean isLossTolerant() {
+                        return true;
+                    }
+                }).build();
         flowFileQueue.put(flowFileRecord);
 
         FlowFile ff1 = session.get();
@@ -885,35 +884,35 @@ public class TestStandardProcessSession {
         session.commit();
 
         final FlowFileRecord flowFileRecord2 = new StandardFlowFileRecord.Builder()
-            .addAttribute("uuid", "12345678-1234-1234-1234-123456789012")
-            .entryDate(System.currentTimeMillis())
-            .contentClaim(new ContentClaim() {
-                @Override
-                public int compareTo(ContentClaim arg0) {
-                    return 0;
-                }
-    
-                @Override
-                public String getId() {
-                    return "0";
-                }
-    
-                @Override
-                public String getContainer() {
-                    return "container";
-                }
-    
-                @Override
-                public String getSection() {
-                    return "section";
-                }
-    
-                @Override
-                public boolean isLossTolerant() {
-                    return true;
-                }
-            })
-            .contentClaimOffset(1000L).size(1L).build();
+                .addAttribute("uuid", "12345678-1234-1234-1234-123456789012")
+                .entryDate(System.currentTimeMillis())
+                .contentClaim(new ContentClaim() {
+                    @Override
+                    public int compareTo(ContentClaim arg0) {
+                        return 0;
+                    }
+
+                    @Override
+                    public String getId() {
+                        return "0";
+                    }
+
+                    @Override
+                    public String getContainer() {
+                        return "container";
+                    }
+
+                    @Override
+                    public String getSection() {
+                        return "section";
+                    }
+
+                    @Override
+                    public boolean isLossTolerant() {
+                        return true;
+                    }
+                })
+                .contentClaimOffset(1000L).size(1L).build();
         flowFileQueue.put(flowFileRecord2);
 
         // attempt to read the data.
@@ -974,21 +973,20 @@ public class TestStandardProcessSession {
         }
     }
 
-    
     @Test
     public void testCreateEmitted() throws IOException {
         FlowFile newFlowFile = session.create();
         session.transfer(newFlowFile, new Relationship.Builder().name("A").build());
         session.commit();
-        
+
         final List<ProvenanceEventRecord> events = provenanceRepo.getEvents(0L, 10000);
         assertFalse(events.isEmpty());
         assertEquals(1, events.size());
-        
+
         final ProvenanceEventRecord event = events.get(0);
         assertEquals(ProvenanceEventType.CREATE, event.getEventType());
     }
-    
+
     @Test
     public void testContentModifiedNotEmittedForCreate() throws IOException {
         FlowFile newFlowFile = session.create();
@@ -999,23 +997,23 @@ public class TestStandardProcessSession {
         });
         session.transfer(newFlowFile, new Relationship.Builder().name("A").build());
         session.commit();
-        
+
         final List<ProvenanceEventRecord> events = provenanceRepo.getEvents(0L, 10000);
         assertFalse(events.isEmpty());
         assertEquals(1, events.size());
-        
+
         final ProvenanceEventRecord event = events.get(0);
         assertEquals(ProvenanceEventType.CREATE, event.getEventType());
     }
-    
+
     @Test
     public void testContentModifiedEmittedAndNotAttributesModified() throws IOException {
         final FlowFileRecord flowFile = new StandardFlowFileRecord.Builder()
-            .id(1L)
-            .addAttribute("uuid", "000000000000-0000-0000-0000-00000000")
-            .build();
+                .id(1L)
+                .addAttribute("uuid", "000000000000-0000-0000-0000-00000000")
+                .build();
         this.flowFileQueue.put(flowFile);
-        
+
         FlowFile existingFlowFile = session.get();
         existingFlowFile = session.write(existingFlowFile, new OutputStreamCallback() {
             @Override
@@ -1025,38 +1023,36 @@ public class TestStandardProcessSession {
         existingFlowFile = session.putAttribute(existingFlowFile, "attr", "a");
         session.transfer(existingFlowFile, new Relationship.Builder().name("A").build());
         session.commit();
-        
+
         final List<ProvenanceEventRecord> events = provenanceRepo.getEvents(0L, 10000);
         assertFalse(events.isEmpty());
         assertEquals(1, events.size());
-        
+
         final ProvenanceEventRecord event = events.get(0);
         assertEquals(ProvenanceEventType.CONTENT_MODIFIED, event.getEventType());
     }
-    
+
     @Test
     public void testAttributesModifiedEmitted() throws IOException {
         final FlowFileRecord flowFile = new StandardFlowFileRecord.Builder()
-            .id(1L)
-            .addAttribute("uuid", "000000000000-0000-0000-0000-00000000")
-            .build();
+                .id(1L)
+                .addAttribute("uuid", "000000000000-0000-0000-0000-00000000")
+                .build();
         this.flowFileQueue.put(flowFile);
-        
+
         FlowFile existingFlowFile = session.get();
         existingFlowFile = session.putAttribute(existingFlowFile, "attr", "a");
         session.transfer(existingFlowFile, new Relationship.Builder().name("A").build());
         session.commit();
-        
+
         final List<ProvenanceEventRecord> events = provenanceRepo.getEvents(0L, 10000);
         assertFalse(events.isEmpty());
         assertEquals(1, events.size());
-        
+
         final ProvenanceEventRecord event = events.get(0);
         assertEquals(ProvenanceEventType.ATTRIBUTES_MODIFIED, event.getEventType());
     }
-    
-    
-    
+
     private static class MockFlowFileRepository implements FlowFileRepository {
 
         private final AtomicLong idGenerator = new AtomicLong(0L);
@@ -1123,7 +1119,7 @@ public class TestStandardProcessSession {
         @Override
         public void shutdown() {
         }
-        
+
         public Set<ContentClaim> getExistingClaims() {
             final Set<ContentClaim> claims = new HashSet<>();
 
@@ -1146,7 +1142,7 @@ public class TestStandardProcessSession {
             if (Files.exists(parent) == false) {
                 Files.createDirectories(parent);
             }
-            Files.createFile(getPath(claim));            
+            Files.createFile(getPath(claim));
             return claim;
         }
 

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/StandardControllerServiceProviderTest.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/StandardControllerServiceProviderTest.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/StandardControllerServiceProviderTest.java
index 7fef706..acd9993 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/StandardControllerServiceProviderTest.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/StandardControllerServiceProviderTest.java
@@ -27,45 +27,45 @@ import org.junit.BeforeClass;
 import org.junit.Test;
 
 public class StandardControllerServiceProviderTest {
-	
+
     private ControllerService proxied;
     private ControllerService implementation;
-    
+
     @BeforeClass
     public static void setupSuite() throws Exception {
         System.setProperty(NiFiProperties.PROPERTIES_FILE_PATH, StandardFlowServiceTest.class.getResource("/conf/nifi.properties").getFile());
         NiFiProperties properties = NiFiProperties.getInstance();
         NarClassLoaders.load(properties);
-    	ExtensionManager.discoverExtensions();
+        ExtensionManager.discoverExtensions();
     }
 
     @Before
     public void setup() throws Exception {
-    	String id = "id";
-    	String clazz = "org.apache.nifi.controller.service.util.TestControllerService";  
-    	ControllerServiceProvider provider = new StandardControllerServiceProvider(null, null);
-    	ControllerServiceNode node = provider.createControllerService(clazz,id,true);
-    	proxied = node.getProxiedControllerService();
-    	implementation = node.getControllerServiceImplementation();
+        String id = "id";
+        String clazz = "org.apache.nifi.controller.service.util.TestControllerService";
+        ControllerServiceProvider provider = new StandardControllerServiceProvider(null, null);
+        ControllerServiceNode node = provider.createControllerService(clazz, id, true);
+        proxied = node.getProxiedControllerService();
+        implementation = node.getControllerServiceImplementation();
     }
-	
-    @Test (expected=UnsupportedOperationException.class)
-    public void testCallProxiedOnPropertyModified() {	
-		proxied.onPropertyModified(null, "oldValue", "newValue");
+
+    @Test(expected = UnsupportedOperationException.class)
+    public void testCallProxiedOnPropertyModified() {
+        proxied.onPropertyModified(null, "oldValue", "newValue");
     }
-    
+
     @Test
-    public void testCallImplementationOnPropertyModified() {	
-    	implementation.onPropertyModified(null, "oldValue", "newValue");
+    public void testCallImplementationOnPropertyModified() {
+        implementation.onPropertyModified(null, "oldValue", "newValue");
     }
-    
-    @Test (expected=UnsupportedOperationException.class)
-    public void testCallProxiedInitialized() throws InitializationException {	
-		proxied.initialize(null);
+
+    @Test(expected = UnsupportedOperationException.class)
+    public void testCallProxiedInitialized() throws InitializationException {
+        proxied.initialize(null);
     }
-    
+
     @Test
-    public void testCallImplementationInitialized() throws InitializationException {	
-    	implementation.initialize(null);
+    public void testCallImplementationInitialized() throws InitializationException {
+        implementation.initialize(null);
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/TestStandardControllerServiceProvider.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/TestStandardControllerServiceProvider.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/TestStandardControllerServiceProvider.java
index 3dc1752..03aca7e 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/TestStandardControllerServiceProvider.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/TestStandardControllerServiceProvider.java
@@ -54,7 +54,7 @@ public class TestStandardControllerServiceProvider {
                 return null;
             }
         }).when(scheduler).enableControllerService(Mockito.any(ControllerServiceNode.class));
-        
+
         Mockito.doAnswer(new Answer<Object>() {
             @Override
             public Object answer(final InvocationOnMock invocation) throws Throwable {
@@ -64,55 +64,54 @@ public class TestStandardControllerServiceProvider {
                 return null;
             }
         }).when(scheduler).disableControllerService(Mockito.any(ControllerServiceNode.class));
-        
+
         return scheduler;
     }
-    
+
     @Test
     public void testDisableControllerService() {
         final ProcessScheduler scheduler = createScheduler();
         final StandardControllerServiceProvider provider = new StandardControllerServiceProvider(scheduler, null);
-        
+
         final ControllerServiceNode serviceNode = provider.createControllerService(ServiceB.class.getName(), "B", false);
         provider.enableControllerService(serviceNode);
         provider.disableControllerService(serviceNode);
     }
-    
+
     @Test
     public void testEnableDisableWithReference() {
         final ProcessScheduler scheduler = createScheduler();
         final StandardControllerServiceProvider provider = new StandardControllerServiceProvider(scheduler, null);
-        
+
         final ControllerServiceNode serviceNodeB = provider.createControllerService(ServiceB.class.getName(), "B", false);
         final ControllerServiceNode serviceNodeA = provider.createControllerService(ServiceA.class.getName(), "A", false);
-        
+
         serviceNodeA.setProperty(ServiceA.OTHER_SERVICE.getName(), "B");
-        
+
         try {
             provider.enableControllerService(serviceNodeA);
             Assert.fail("Was able to enable Service A but Service B is disabled.");
         } catch (final IllegalStateException expected) {
         }
-        
+
         provider.enableControllerService(serviceNodeB);
         provider.enableControllerService(serviceNodeA);
-        
+
         try {
             provider.disableControllerService(serviceNodeB);
             Assert.fail("Was able to disable Service B but Service A is enabled and references B");
         } catch (final IllegalStateException expected) {
         }
-        
+
         provider.disableControllerService(serviceNodeA);
         provider.disableControllerService(serviceNodeB);
     }
-    
-    
+
     @Test
     public void testEnableReferencingServicesGraph() {
         final ProcessScheduler scheduler = createScheduler();
         final StandardControllerServiceProvider provider = new StandardControllerServiceProvider(scheduler, null);
-        
+
         // build a graph of controller services with dependencies as such:
         //
         // A -> B -> D
@@ -125,31 +124,29 @@ public class TestStandardControllerServiceProvider {
         // So we have to verify that if D is enabled, when we enable its referencing services,
         // we enable C and B, even if we attempt to enable C before B... i.e., if we try to enable C, we cannot do so
         // until B is first enabled so ensure that we enable B first.
-        
         final ControllerServiceNode serviceNode1 = provider.createControllerService(ServiceA.class.getName(), "1", false);
         final ControllerServiceNode serviceNode2 = provider.createControllerService(ServiceA.class.getName(), "2", false);
         final ControllerServiceNode serviceNode3 = provider.createControllerService(ServiceA.class.getName(), "3", false);
         final ControllerServiceNode serviceNode4 = provider.createControllerService(ServiceB.class.getName(), "4", false);
-        
+
         serviceNode1.setProperty(ServiceA.OTHER_SERVICE.getName(), "2");
         serviceNode2.setProperty(ServiceA.OTHER_SERVICE.getName(), "4");
         serviceNode3.setProperty(ServiceA.OTHER_SERVICE.getName(), "2");
         serviceNode3.setProperty(ServiceA.OTHER_SERVICE_2.getName(), "4");
-        
+
         provider.enableControllerService(serviceNode4);
         provider.enableReferencingServices(serviceNode4);
-        
+
         assertEquals(ControllerServiceState.ENABLED, serviceNode3.getState());
         assertEquals(ControllerServiceState.ENABLED, serviceNode2.getState());
         assertEquals(ControllerServiceState.ENABLED, serviceNode1.getState());
     }
-    
-    
+
     @Test
     public void testStartStopReferencingComponents() {
         final ProcessScheduler scheduler = createScheduler();
         final StandardControllerServiceProvider provider = new StandardControllerServiceProvider(scheduler, null);
-        
+
         // build a graph of reporting tasks and controller services with dependencies as such:
         //
         // Processor P1 -> A -> B -> D
@@ -162,12 +159,11 @@ public class TestStandardControllerServiceProvider {
         // So we have to verify that if D is enabled, when we enable its referencing services,
         // we enable C and B, even if we attempt to enable C before B... i.e., if we try to enable C, we cannot do so
         // until B is first enabled so ensure that we enable B first.
-        
         final ControllerServiceNode serviceNode1 = provider.createControllerService(ServiceA.class.getName(), "1", false);
         final ControllerServiceNode serviceNode2 = provider.createControllerService(ServiceA.class.getName(), "2", false);
         final ControllerServiceNode serviceNode3 = provider.createControllerService(ServiceA.class.getName(), "3", false);
         final ControllerServiceNode serviceNode4 = provider.createControllerService(ServiceB.class.getName(), "4", false);
-        
+
         final ProcessGroup mockProcessGroup = Mockito.mock(ProcessGroup.class);
         Mockito.doAnswer(new Answer<Object>() {
             @Override
@@ -178,7 +174,7 @@ public class TestStandardControllerServiceProvider {
                 return null;
             }
         }).when(mockProcessGroup).startProcessor(Mockito.any(ProcessorNode.class));
-        
+
         Mockito.doAnswer(new Answer<Object>() {
             @Override
             public Object answer(final InvocationOnMock invocation) throws Throwable {
@@ -188,36 +184,36 @@ public class TestStandardControllerServiceProvider {
                 return null;
             }
         }).when(mockProcessGroup).stopProcessor(Mockito.any(ProcessorNode.class));
-        
+
         final String id1 = UUID.randomUUID().toString();
         final ProcessorNode procNodeA = new StandardProcessorNode(new DummyProcessor(), id1,
                 new StandardValidationContextFactory(provider), scheduler, provider);
         procNodeA.getProcessor().initialize(new StandardProcessorInitializationContext(id1, null, provider));
         procNodeA.setProperty(DummyProcessor.SERVICE.getName(), "1");
         procNodeA.setProcessGroup(mockProcessGroup);
-        
+
         final String id2 = UUID.randomUUID().toString();
-        final ProcessorNode procNodeB = new StandardProcessorNode(new DummyProcessor(),id2,
+        final ProcessorNode procNodeB = new StandardProcessorNode(new DummyProcessor(), id2,
                 new StandardValidationContextFactory(provider), scheduler, provider);
         procNodeB.getProcessor().initialize(new StandardProcessorInitializationContext(id2, null, provider));
         procNodeB.setProperty(DummyProcessor.SERVICE.getName(), "3");
         procNodeB.setProcessGroup(mockProcessGroup);
-        
+
         serviceNode1.setProperty(ServiceA.OTHER_SERVICE.getName(), "2");
         serviceNode2.setProperty(ServiceA.OTHER_SERVICE.getName(), "4");
         serviceNode3.setProperty(ServiceA.OTHER_SERVICE.getName(), "2");
         serviceNode3.setProperty(ServiceA.OTHER_SERVICE_2.getName(), "4");
-        
+
         provider.enableControllerService(serviceNode4);
         provider.enableReferencingServices(serviceNode4);
         provider.scheduleReferencingComponents(serviceNode4);
-        
+
         assertEquals(ControllerServiceState.ENABLED, serviceNode3.getState());
         assertEquals(ControllerServiceState.ENABLED, serviceNode2.getState());
         assertEquals(ControllerServiceState.ENABLED, serviceNode1.getState());
         assertTrue(procNodeA.isRunning());
         assertTrue(procNodeB.isRunning());
-        
+
         // stop processors and verify results.
         provider.unscheduleReferencingComponents(serviceNode4);
         assertFalse(procNodeA.isRunning());
@@ -225,18 +221,17 @@ public class TestStandardControllerServiceProvider {
         assertEquals(ControllerServiceState.ENABLED, serviceNode3.getState());
         assertEquals(ControllerServiceState.ENABLED, serviceNode2.getState());
         assertEquals(ControllerServiceState.ENABLED, serviceNode1.getState());
-        
+
         provider.disableReferencingServices(serviceNode4);
         assertEquals(ControllerServiceState.DISABLED, serviceNode3.getState());
         assertEquals(ControllerServiceState.DISABLED, serviceNode2.getState());
         assertEquals(ControllerServiceState.DISABLED, serviceNode1.getState());
         assertEquals(ControllerServiceState.ENABLED, serviceNode4.getState());
-        
+
         provider.disableControllerService(serviceNode4);
         assertEquals(ControllerServiceState.DISABLED, serviceNode4.getState());
     }
-    
-    
+
     @Test
     public void testOrderingOfServices() {
         final StandardControllerServiceProvider provider = new StandardControllerServiceProvider(null, null);
@@ -248,7 +243,7 @@ public class TestStandardControllerServiceProvider {
         final Map<String, ControllerServiceNode> nodeMap = new LinkedHashMap<>();
         nodeMap.put("1", serviceNode1);
         nodeMap.put("2", serviceNode2);
-        
+
         List<List<ControllerServiceNode>> branches = StandardControllerServiceProvider.determineEnablingOrder(nodeMap);
         assertEquals(2, branches.size());
         List<ControllerServiceNode> ordered = branches.get(0);
@@ -257,11 +252,11 @@ public class TestStandardControllerServiceProvider {
         assertTrue(ordered.get(1) == serviceNode1);
         assertEquals(1, branches.get(1).size());
         assertTrue(branches.get(1).get(0) == serviceNode2);
-        
+
         nodeMap.clear();
         nodeMap.put("2", serviceNode2);
         nodeMap.put("1", serviceNode1);
-        
+
         branches = StandardControllerServiceProvider.determineEnablingOrder(nodeMap);
         assertEquals(2, branches.size());
         ordered = branches.get(1);
@@ -270,20 +265,20 @@ public class TestStandardControllerServiceProvider {
         assertTrue(ordered.get(1) == serviceNode1);
         assertEquals(1, branches.get(0).size());
         assertTrue(branches.get(0).get(0) == serviceNode2);
-        
+
         // add circular dependency on self.
         nodeMap.clear();
         serviceNode1.setProperty(ServiceA.OTHER_SERVICE_2.getName(), "1");
         nodeMap.put("1", serviceNode1);
         nodeMap.put("2", serviceNode2);
-        
+
         branches = StandardControllerServiceProvider.determineEnablingOrder(nodeMap);
         assertEquals(2, branches.size());
         ordered = branches.get(0);
         assertEquals(2, ordered.size());
         assertTrue(ordered.get(0) == serviceNode2);
         assertTrue(ordered.get(1) == serviceNode1);
-        
+
         nodeMap.clear();
         nodeMap.put("2", serviceNode2);
         nodeMap.put("1", serviceNode1);
@@ -293,7 +288,7 @@ public class TestStandardControllerServiceProvider {
         assertEquals(2, ordered.size());
         assertTrue(ordered.get(0) == serviceNode2);
         assertTrue(ordered.get(1) == serviceNode1);
-        
+
         // add circular dependency once removed. In this case, we won't actually be able to enable these because of the
         // circular dependency because they will never be valid because they will always depend on a disabled service.
         // But we want to ensure that the method returns successfully without throwing a StackOverflowException or anything
@@ -310,7 +305,7 @@ public class TestStandardControllerServiceProvider {
         assertEquals(2, ordered.size());
         assertTrue(ordered.get(0) == serviceNode3);
         assertTrue(ordered.get(1) == serviceNode1);
-        
+
         nodeMap.clear();
         nodeMap.put("3", serviceNode3);
         nodeMap.put("1", serviceNode1);
@@ -320,8 +315,7 @@ public class TestStandardControllerServiceProvider {
         assertEquals(2, ordered.size());
         assertTrue(ordered.get(0) == serviceNode3);
         assertTrue(ordered.get(1) == serviceNode1);
-        
-        
+
         // Add multiple completely disparate branches.
         nodeMap.clear();
         serviceNode1.setProperty(ServiceA.OTHER_SERVICE.getName(), "2");
@@ -333,7 +327,7 @@ public class TestStandardControllerServiceProvider {
         nodeMap.put("3", serviceNode3);
         nodeMap.put("4", serviceNode4);
         nodeMap.put("5", serviceNode5);
-        
+
         branches = StandardControllerServiceProvider.determineEnablingOrder(nodeMap);
         assertEquals(5, branches.size());
 
@@ -341,21 +335,21 @@ public class TestStandardControllerServiceProvider {
         assertEquals(2, ordered.size());
         assertTrue(ordered.get(0) == serviceNode2);
         assertTrue(ordered.get(1) == serviceNode1);
-        
+
         assertEquals(1, branches.get(1).size());
         assertTrue(branches.get(1).get(0) == serviceNode2);
-        
+
         ordered = branches.get(2);
         assertEquals(2, ordered.size());
         assertTrue(ordered.get(0) == serviceNode4);
         assertTrue(ordered.get(1) == serviceNode3);
-        
+
         assertEquals(1, branches.get(3).size());
         assertTrue(branches.get(3).get(0) == serviceNode4);
-        
+
         assertEquals(1, branches.get(4).size());
         assertTrue(branches.get(4).get(0) == serviceNode5);
-        
+
         // create 2 branches both dependent on the same service
         nodeMap.clear();
         serviceNode1.setProperty(ServiceA.OTHER_SERVICE.getName(), "2");
@@ -363,19 +357,19 @@ public class TestStandardControllerServiceProvider {
         nodeMap.put("1", serviceNode1);
         nodeMap.put("2", serviceNode2);
         nodeMap.put("3", serviceNode3);
-        
+
         branches = StandardControllerServiceProvider.determineEnablingOrder(nodeMap);
         assertEquals(3, branches.size());
-        
+
         ordered = branches.get(0);
         assertEquals(2, ordered.size());
         assertTrue(ordered.get(0) == serviceNode2);
         assertTrue(ordered.get(1) == serviceNode1);
-        
+
         ordered = branches.get(1);
         assertEquals(1, ordered.size());
         assertTrue(ordered.get(0) == serviceNode2);
-        
+
         ordered = branches.get(2);
         assertEquals(2, ordered.size());
         assertTrue(ordered.get(0) == serviceNode2);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/mock/DummyProcessor.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/mock/DummyProcessor.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/mock/DummyProcessor.java
index 615e172..13898a5 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/mock/DummyProcessor.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/mock/DummyProcessor.java
@@ -29,19 +29,18 @@ import org.apache.nifi.processor.exception.ProcessException;
 public class DummyProcessor extends AbstractProcessor {
 
     public static final PropertyDescriptor SERVICE = new PropertyDescriptor.Builder()
-        .name("Controller Service")
-        .identifiesControllerService(ControllerService.class)
-        .required(true)
-        .build();
-    
-    
+            .name("Controller Service")
+            .identifiesControllerService(ControllerService.class)
+            .required(true)
+            .build();
+
     @Override
     protected List<PropertyDescriptor> getSupportedPropertyDescriptors() {
         final List<PropertyDescriptor> descriptors = new ArrayList<>();
         descriptors.add(SERVICE);
         return descriptors;
     }
-    
+
     @Override
     public void onTrigger(ProcessContext context, ProcessSession session) throws ProcessException {
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/mock/ServiceA.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/mock/ServiceA.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/mock/ServiceA.java
index 4918468..f93184b 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/mock/ServiceA.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/mock/ServiceA.java
@@ -26,18 +26,17 @@ import org.apache.nifi.controller.ControllerService;
 public class ServiceA extends AbstractControllerService {
 
     public static final PropertyDescriptor OTHER_SERVICE = new PropertyDescriptor.Builder()
-        .name("Other Service")
-        .identifiesControllerService(ControllerService.class)
-        .required(true)
-        .build();
-    
+            .name("Other Service")
+            .identifiesControllerService(ControllerService.class)
+            .required(true)
+            .build();
+
     public static final PropertyDescriptor OTHER_SERVICE_2 = new PropertyDescriptor.Builder()
-        .name("Other Service 2")
-        .identifiesControllerService(ControllerService.class)
-        .required(false)
-        .build();
+            .name("Other Service 2")
+            .identifiesControllerService(ControllerService.class)
+            .required(false)
+            .build();
 
-    
     @Override
     protected List<PropertyDescriptor> getSupportedPropertyDescriptors() {
         final List<PropertyDescriptor> descriptors = new ArrayList<>();
@@ -45,5 +44,5 @@ public class ServiceA extends AbstractControllerService {
         descriptors.add(OTHER_SERVICE_2);
         return descriptors;
     }
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/util/TestControllerService.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/util/TestControllerService.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/util/TestControllerService.java
index 95200a0..65ef13f 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/util/TestControllerService.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/service/util/TestControllerService.java
@@ -28,34 +28,34 @@ import org.apache.nifi.reporting.InitializationException;
 
 public class TestControllerService implements ControllerService {
 
-	@Override
-	public Collection<ValidationResult> validate(ValidationContext context) {
-		return null;
-	}
-
-	@Override
-	public PropertyDescriptor getPropertyDescriptor(String name) {
-		return null;
-	}
-
-	@Override
-	public void onPropertyModified(PropertyDescriptor descriptor,
-			String oldValue, String newValue) {
-	}
-
-	@Override
-	public List<PropertyDescriptor> getPropertyDescriptors() {
-		return null;
-	}
-
-	@Override
-	public String getIdentifier() {
-		return null;
-	}
-
-	@Override
-	public void initialize(ControllerServiceInitializationContext context)
-			throws InitializationException {
-	}
+    @Override
+    public Collection<ValidationResult> validate(ValidationContext context) {
+        return null;
+    }
+
+    @Override
+    public PropertyDescriptor getPropertyDescriptor(String name) {
+        return null;
+    }
+
+    @Override
+    public void onPropertyModified(PropertyDescriptor descriptor,
+            String oldValue, String newValue) {
+    }
+
+    @Override
+    public List<PropertyDescriptor> getPropertyDescriptors() {
+        return null;
+    }
+
+    @Override
+    public String getIdentifier() {
+        return null;
+    }
+
+    @Override
+    public void initialize(ControllerServiceInitializationContext context)
+            throws InitializationException {
+    }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/processor/TestStandardPropertyValue.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/processor/TestStandardPropertyValue.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/processor/TestStandardPropertyValue.java
index a0bf30d..be40e90 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/processor/TestStandardPropertyValue.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/processor/TestStandardPropertyValue.java
@@ -165,9 +165,9 @@ public class TestStandardPropertyValue {
 
         @Override
         public String getControllerServiceName(String serviceIdentifier) {
-        	return null;
+            return null;
         }
-        
+
         @Override
         public boolean isControllerServiceEnabling(String serviceIdentifier) {
             return false;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime/pom.xml
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime/pom.xml b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime/pom.xml
index 46a1aca..0406ed6 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime/pom.xml
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime/pom.xml
@@ -32,7 +32,7 @@
             <artifactId>nifi-properties</artifactId>
             <scope>compile</scope>
         </dependency>
-		<dependency>
+        <dependency>
             <groupId>org.apache.nifi</groupId>
             <artifactId>nifi-documentation</artifactId>
             <scope>compile</scope>

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime/src/main/java/org/apache/nifi/BootstrapListener.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime/src/main/java/org/apache/nifi/BootstrapListener.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime/src/main/java/org/apache/nifi/BootstrapListener.java
index 590797c..c1bdf97 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime/src/main/java/org/apache/nifi/BootstrapListener.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime/src/main/java/org/apache/nifi/BootstrapListener.java
@@ -47,166 +47,165 @@ 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 final String secretKey;
-	
-	private volatile Listener listener;
-	private volatile ServerSocket serverSocket;
-	
-	
-	public BootstrapListener(final NiFi nifi, final int bootstrapPort) {
-		this.nifi = nifi;
-		this.bootstrapPort = bootstrapPort;
-		secretKey = UUID.randomUUID().toString();
-	}
-	
-	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));
-		serverSocket.setSoTimeout(2000);
-		
-		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.setDaemon(true);
-		listenThread.setName("Listen to Bootstrap");
-		listenThread.start();
-		
-		logger.debug("Notifying Bootstrap that local port is {}", localPort);
-		try (final Socket socket = new Socket()) {
-			socket.setSoTimeout(60000);
-			socket.connect(new InetSocketAddress("localhost", bootstrapPort));
-			socket.setSoTimeout(60000);
-			
-			final OutputStream out = socket.getOutputStream();
-			out.write(("PORT " + localPort + " " + secretKey + "\n").getBytes(StandardCharsets.UTF_8));
-			out.flush();
-			
-			logger.debug("Awaiting response from Bootstrap...");
-			final BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
-			final String response = reader.readLine();
-			if ("OK".equals(response)) {
-				logger.info("Successfully initiated communication with Bootstrap");
-			} else {
-				logger.error("Failed to communicate with Bootstrap. Bootstrap may be unable to issue or receive commands from NiFi");
-			}
-		}
-	}
-	
-	
-	public void stop() {
-		if (listener != null) {
-			listener.stop();
-		}
-	}
-	
-	private class Listener implements Runnable {
-		private final ServerSocket serverSocket;
-		private final ExecutorService executor;
-		private volatile boolean stopped = false;
-		
-		public Listener(final ServerSocket serverSocket) {
-			this.serverSocket = serverSocket;
-			this.executor = Executors.newFixedThreadPool(2);
-		}
-		
-		public void stop() {
-			stopped = true;
-			
-			executor.shutdownNow();
-			
-			try {
-				serverSocket.close();
-			} catch (final IOException ioe) {
-				// nothing to really do here. we could log this, but it would just become
-				// confusing in the logs, as we're shutting down and there's no real benefit
-			}
-		}
-		
-		@Override
-		public void run() {
-			while (!stopped) {
-				try {
-					final Socket socket;
-					try {
-					    logger.debug("Listening for Bootstrap Requests");
-						socket = serverSocket.accept();
-					} catch (final SocketTimeoutException ste) {
-						if ( stopped ) {
-							return;
-						}
-						
-						continue;
-					} catch (final IOException ioe) {
-						if ( stopped ) {
-							return;
-						}
-						
-						throw ioe;
-					}
-					
-					logger.debug("Received connection from Bootstrap");
-					socket.setSoTimeout(5000);
-					
-					executor.submit(new Runnable() {
-						@Override
-						public void run() {
-							try {
-								final BootstrapRequest request = readRequest(socket.getInputStream());
-								final BootstrapRequest.RequestType requestType = request.getRequestType();
-								
-								switch (requestType) {
-									case PING:
-										logger.debug("Received PING request from Bootstrap; responding");
-										echoPing(socket.getOutputStream());
-										logger.debug("Responded to PING request from Bootstrap");
-										break;
-									case SHUTDOWN:
-										logger.info("Received SHUTDOWN request from Bootstrap");
-										echoShutdown(socket.getOutputStream());
-										nifi.shutdownHook();
-										return;
-									case DUMP:
-									    logger.info("Received DUMP request from Bootstrap");
-									    writeDump(socket.getOutputStream());
-									    break;
-								}
-							} catch (final Throwable t) {
-								logger.error("Failed to process request from Bootstrap due to " + t.toString(), t);
-							} finally {
-								try {
-									socket.close();
-								} catch (final IOException ioe) {
-									logger.warn("Failed to close socket to Bootstrap due to {}", ioe.toString());
-								}
-							}
-						}
-					});
-				} catch (final Throwable t) {
-					logger.error("Failed to process request from Bootstrap due to " + t.toString(), t);
-				}
-			}
-		}
-	}
-	
-	
-	private static void writeDump(final OutputStream out) throws IOException {
+
+    private static final Logger logger = LoggerFactory.getLogger(BootstrapListener.class);
+
+    private final NiFi nifi;
+    private final int bootstrapPort;
+    private final String secretKey;
+
+    private volatile Listener listener;
+    private volatile ServerSocket serverSocket;
+
+    public BootstrapListener(final NiFi nifi, final int bootstrapPort) {
+        this.nifi = nifi;
+        this.bootstrapPort = bootstrapPort;
+        secretKey = UUID.randomUUID().toString();
+    }
+
+    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));
+        serverSocket.setSoTimeout(2000);
+
+        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.setDaemon(true);
+        listenThread.setName("Listen to Bootstrap");
+        listenThread.start();
+
+        logger.debug("Notifying Bootstrap that local port is {}", localPort);
+        try (final Socket socket = new Socket()) {
+            socket.setSoTimeout(60000);
+            socket.connect(new InetSocketAddress("localhost", bootstrapPort));
+            socket.setSoTimeout(60000);
+
+            final OutputStream out = socket.getOutputStream();
+            out.write(("PORT " + localPort + " " + secretKey + "\n").getBytes(StandardCharsets.UTF_8));
+            out.flush();
+
+            logger.debug("Awaiting response from Bootstrap...");
+            final BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
+            final String response = reader.readLine();
+            if ("OK".equals(response)) {
+                logger.info("Successfully initiated communication with Bootstrap");
+            } else {
+                logger.error("Failed to communicate with Bootstrap. Bootstrap may be unable to issue or receive commands from NiFi");
+            }
+        }
+    }
+
+    public void stop() {
+        if (listener != null) {
+            listener.stop();
+        }
+    }
+
+    private class Listener implements Runnable {
+
+        private final ServerSocket serverSocket;
+        private final ExecutorService executor;
+        private volatile boolean stopped = false;
+
+        public Listener(final ServerSocket serverSocket) {
+            this.serverSocket = serverSocket;
+            this.executor = Executors.newFixedThreadPool(2);
+        }
+
+        public void stop() {
+            stopped = true;
+
+            executor.shutdownNow();
+
+            try {
+                serverSocket.close();
+            } catch (final IOException ioe) {
+                // nothing to really do here. we could log this, but it would just become
+                // confusing in the logs, as we're shutting down and there's no real benefit
+            }
+        }
+
+        @Override
+        public void run() {
+            while (!stopped) {
+                try {
+                    final Socket socket;
+                    try {
+                        logger.debug("Listening for Bootstrap Requests");
+                        socket = serverSocket.accept();
+                    } catch (final SocketTimeoutException ste) {
+                        if (stopped) {
+                            return;
+                        }
+
+                        continue;
+                    } catch (final IOException ioe) {
+                        if (stopped) {
+                            return;
+                        }
+
+                        throw ioe;
+                    }
+
+                    logger.debug("Received connection from Bootstrap");
+                    socket.setSoTimeout(5000);
+
+                    executor.submit(new Runnable() {
+                        @Override
+                        public void run() {
+                            try {
+                                final BootstrapRequest request = readRequest(socket.getInputStream());
+                                final BootstrapRequest.RequestType requestType = request.getRequestType();
+
+                                switch (requestType) {
+                                    case PING:
+                                        logger.debug("Received PING request from Bootstrap; responding");
+                                        echoPing(socket.getOutputStream());
+                                        logger.debug("Responded to PING request from Bootstrap");
+                                        break;
+                                    case SHUTDOWN:
+                                        logger.info("Received SHUTDOWN request from Bootstrap");
+                                        echoShutdown(socket.getOutputStream());
+                                        nifi.shutdownHook();
+                                        return;
+                                    case DUMP:
+                                        logger.info("Received DUMP request from Bootstrap");
+                                        writeDump(socket.getOutputStream());
+                                        break;
+                                }
+                            } catch (final Throwable t) {
+                                logger.error("Failed to process request from Bootstrap due to " + t.toString(), t);
+                            } finally {
+                                try {
+                                    socket.close();
+                                } catch (final IOException ioe) {
+                                    logger.warn("Failed to close socket to Bootstrap due to {}", ioe.toString());
+                                }
+                            }
+                        }
+                    });
+                } catch (final Throwable t) {
+                    logger.error("Failed to process request from Bootstrap due to " + t.toString(), t);
+                }
+            }
+        }
+    }
+
+    private static void writeDump(final OutputStream out) throws IOException {
         final ThreadMXBean mbean = ManagementFactory.getThreadMXBean();
         final BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(out));
-        
+
         final ThreadInfo[] infos = mbean.dumpAllThreads(true, true);
         final long[] deadlockedThreadIds = mbean.findDeadlockedThreads();
         final long[] monitorDeadlockThreadIds = mbean.findMonitorDeadlockedThreads();
-        
+
         final List<ThreadInfo> sortedInfos = new ArrayList<>(infos.length);
-        for ( final ThreadInfo info : infos ) {
+        for (final ThreadInfo info : infos) {
             sortedInfos.add(info);
         }
         Collections.sort(sortedInfos, new Comparator<ThreadInfo>() {
@@ -215,14 +214,14 @@ public class BootstrapListener {
                 return o1.getThreadName().toLowerCase().compareTo(o2.getThreadName().toLowerCase());
             }
         });
-        
+
         final StringBuilder sb = new StringBuilder();
-        for ( final ThreadInfo info : sortedInfos ) {
+        for (final ThreadInfo info : sortedInfos) {
             sb.append("\n");
             sb.append("\"").append(info.getThreadName()).append("\" Id=");
             sb.append(info.getThreadId()).append(" ");
             sb.append(info.getThreadState().toString()).append(" ");
-            
+
             switch (info.getThreadState()) {
                 case BLOCKED:
                 case TIMED_WAITING:
@@ -233,66 +232,66 @@ public class BootstrapListener {
                 default:
                     break;
             }
-            
+
             if (info.isSuspended()) {
                 sb.append(" (suspended)");
             }
-            if ( info.isInNative() ) {
+            if (info.isInNative()) {
                 sb.append(" (in native code)");
             }
-            
-            if ( deadlockedThreadIds != null && deadlockedThreadIds.length > 0 ) {
-                for ( final long id : deadlockedThreadIds ) {
-                    if ( id == info.getThreadId() ) {
+
+            if (deadlockedThreadIds != null && deadlockedThreadIds.length > 0) {
+                for (final long id : deadlockedThreadIds) {
+                    if (id == info.getThreadId()) {
                         sb.append(" ** DEADLOCKED THREAD **");
                     }
                 }
             }
 
-           if ( monitorDeadlockThreadIds != null && monitorDeadlockThreadIds.length > 0 ) {
-                for ( final long id : monitorDeadlockThreadIds ) {
-                    if ( id == info.getThreadId() ) {
+            if (monitorDeadlockThreadIds != null && monitorDeadlockThreadIds.length > 0) {
+                for (final long id : monitorDeadlockThreadIds) {
+                    if (id == info.getThreadId()) {
                         sb.append(" ** MONITOR-DEADLOCKED THREAD **");
                     }
                 }
             }
 
             final StackTraceElement[] stackTraces = info.getStackTrace();
-            for ( final StackTraceElement element : stackTraces ) {
+            for (final StackTraceElement element : stackTraces) {
                 sb.append("\n\tat ").append(element);
-                
+
                 final MonitorInfo[] monitors = info.getLockedMonitors();
-                for ( final MonitorInfo monitor : monitors ) {
-                    if ( monitor.getLockedStackFrame().equals(element) ) {
+                for (final MonitorInfo monitor : monitors) {
+                    if (monitor.getLockedStackFrame().equals(element)) {
                         sb.append("\n\t- waiting on ").append(monitor);
                     }
                 }
             }
-            
+
             final LockInfo[] lockInfos = info.getLockedSynchronizers();
-            if ( lockInfos.length > 0 ) {
+            if (lockInfos.length > 0) {
                 sb.append("\n\t");
                 sb.append("Number of Locked Synchronizers: ").append(lockInfos.length);
-                for ( final LockInfo lockInfo : lockInfos ) {
+                for (final LockInfo lockInfo : lockInfos) {
                     sb.append("\n\t- ").append(lockInfo.toString());
                 }
             }
-            
+
             sb.append("\n");
         }
-        
+
         if (deadlockedThreadIds != null && deadlockedThreadIds.length > 0) {
             sb.append("\n\nDEADLOCK DETECTED!");
             sb.append("\nThe following thread IDs are deadlocked:");
-            for ( final long id : deadlockedThreadIds ) {
+            for (final long id : deadlockedThreadIds) {
                 sb.append("\n").append(id);
             }
         }
 
-       if (monitorDeadlockThreadIds != null && monitorDeadlockThreadIds.length > 0) {
+        if (monitorDeadlockThreadIds != null && monitorDeadlockThreadIds.length > 0) {
             sb.append("\n\nMONITOR DEADLOCK DETECTED!");
             sb.append("\nThe following thread IDs are deadlocked:");
-            for ( final long id : monitorDeadlockThreadIds ) {
+            for (final long id : monitorDeadlockThreadIds) {
                 sb.append("\n").append(id);
             }
         }
@@ -300,79 +299,79 @@ public class BootstrapListener {
         writer.write(sb.toString());
         writer.flush();
     }
-	
-	private void echoPing(final OutputStream out) throws IOException {
-		out.write("PING\n".getBytes(StandardCharsets.UTF_8));
-		out.flush();
-	}
-	
-	private void echoShutdown(final OutputStream out) throws IOException {
-		out.write("SHUTDOWN\n".getBytes(StandardCharsets.UTF_8));
-		out.flush();
-	}
-	
-	
-	@SuppressWarnings("resource")  // we don't want to close the stream, as the caller will do that
+
+    private void echoPing(final OutputStream out) throws IOException {
+        out.write("PING\n".getBytes(StandardCharsets.UTF_8));
+        out.flush();
+    }
+
+    private void echoShutdown(final OutputStream out) throws IOException {
+        out.write("SHUTDOWN\n".getBytes(StandardCharsets.UTF_8));
+        out.flush();
+    }
+
+    @SuppressWarnings("resource")  // we don't want to close the stream, as the caller will do that
     private BootstrapRequest readRequest(final InputStream in) throws IOException {
-	    // We want to ensure that we don't try to read data from an InputStream directly
-	    // by a BufferedReader because any user on the system could open a socket and send
-	    // a multi-gigabyte file without any new lines in order to crash the NiFi instance
-	    // (or at least cause OutOfMemoryErrors, which can wreak havoc on the running instance).
-	    // So we will limit the Input Stream to only 4 KB, which should be plenty for any request.
-	    final LimitingInputStream limitingIn = new LimitingInputStream(in, 4096);
-		final BufferedReader reader = new BufferedReader(new InputStreamReader(limitingIn));
-		
-		final String line = reader.readLine();
-		final String[] splits = line.split(" ");
-		if ( splits.length < 1 ) {
-			throw new IOException("Received invalid request from Bootstrap: " + line);
-		}
-		
-		final String requestType = splits[0];
-		final String[] args;
-		if ( splits.length == 1 ) {
-			throw new IOException("Received invalid request from Bootstrap; request did not have a secret key; request type = " + requestType);
-		} else if ( splits.length == 2 ) {
-		    args = new String[0];
-		} else {
-			args = Arrays.copyOfRange(splits, 2, splits.length);
-		}
-		
-		final String requestKey = splits[1];
-		if ( !secretKey.equals(requestKey) ) {
-		    throw new IOException("Received invalid Secret Key for request type " + requestType);
-		}
-		
-		try {
-			return new BootstrapRequest(requestType, args);
-		} catch (final Exception e) {
-			throw new IOException("Received invalid request from Bootstrap; request type = " + requestType);
-		}
-	}
-	
-	
-	private static class BootstrapRequest {
-		public static enum RequestType {
-			SHUTDOWN,
-			DUMP,
-			PING;
-		}
-		
-		private final RequestType requestType;
-		private final String[] args;
-		
-		public BootstrapRequest(final String request, final String[] args) {
-			this.requestType = RequestType.valueOf(request);
-			this.args = args;
-		}
-		
-		public RequestType getRequestType() {
-			return requestType;
-		}
-		
-		@SuppressWarnings("unused")
+        // We want to ensure that we don't try to read data from an InputStream directly
+        // by a BufferedReader because any user on the system could open a socket and send
+        // a multi-gigabyte file without any new lines in order to crash the NiFi instance
+        // (or at least cause OutOfMemoryErrors, which can wreak havoc on the running instance).
+        // So we will limit the Input Stream to only 4 KB, which should be plenty for any request.
+        final LimitingInputStream limitingIn = new LimitingInputStream(in, 4096);
+        final BufferedReader reader = new BufferedReader(new InputStreamReader(limitingIn));
+
+        final String line = reader.readLine();
+        final String[] splits = line.split(" ");
+        if (splits.length < 1) {
+            throw new IOException("Received invalid request from Bootstrap: " + line);
+        }
+
+        final String requestType = splits[0];
+        final String[] args;
+        if (splits.length == 1) {
+            throw new IOException("Received invalid request from Bootstrap; request did not have a secret key; request type = " + requestType);
+        } else if (splits.length == 2) {
+            args = new String[0];
+        } else {
+            args = Arrays.copyOfRange(splits, 2, splits.length);
+        }
+
+        final String requestKey = splits[1];
+        if (!secretKey.equals(requestKey)) {
+            throw new IOException("Received invalid Secret Key for request type " + requestType);
+        }
+
+        try {
+            return new BootstrapRequest(requestType, args);
+        } catch (final Exception e) {
+            throw new IOException("Received invalid request from Bootstrap; request type = " + requestType);
+        }
+    }
+
+    private static class BootstrapRequest {
+
+        public static enum RequestType {
+
+            SHUTDOWN,
+            DUMP,
+            PING;
+        }
+
+        private final RequestType requestType;
+        private final String[] args;
+
+        public BootstrapRequest(final String request, final String[] args) {
+            this.requestType = RequestType.valueOf(request);
+            this.args = args;
+        }
+
+        public RequestType getRequestType() {
+            return requestType;
+        }
+
+        @SuppressWarnings("unused")
         public String[] getArgs() {
-			return args;
-		}
-	}
+            return args;
+        }
+    }
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime/src/main/java/org/apache/nifi/NiFi.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime/src/main/java/org/apache/nifi/NiFi.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime/src/main/java/org/apache/nifi/NiFi.java
index e166f8e..ef2377f 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime/src/main/java/org/apache/nifi/NiFi.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-runtime/src/main/java/org/apache/nifi/NiFi.java
@@ -47,11 +47,12 @@ public class NiFi {
     private static final Logger logger = LoggerFactory.getLogger(NiFi.class);
     private final NiFiServer nifiServer;
     private final BootstrapListener bootstrapListener;
-    
+
     public static final String BOOTSTRAP_PORT_PROPERTY = "nifi.bootstrap.listen.port";
     private volatile boolean shutdown = false;
 
-    public NiFi(final NiFiProperties properties) throws ClassNotFoundException, IOException, NoSuchMethodException, InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException {
+    public NiFi(final NiFiProperties properties)
+            throws ClassNotFoundException, IOException, NoSuchMethodException, InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException {
         Thread.setDefaultUncaughtExceptionHandler(new UncaughtExceptionHandler() {
             @Override
             public void uncaughtException(final Thread t, final Throwable e) {
@@ -70,24 +71,24 @@ public class NiFi {
         }));
 
         final String bootstrapPort = System.getProperty(BOOTSTRAP_PORT_PROPERTY);
-        if ( bootstrapPort != null ) {
-        	try {
-        		final int port = Integer.parseInt(bootstrapPort);
-        		
-        		if (port < 1 || port > 65535) {
-        			throw new RuntimeException("Failed to start NiFi because system property '" + BOOTSTRAP_PORT_PROPERTY + "' is not a valid integer in the range 1 - 65535");
-        		}
-        		
-        		bootstrapListener = new BootstrapListener(this, port);
-        		bootstrapListener.start();
-        	} catch (final NumberFormatException nfe) {
-        		throw new RuntimeException("Failed to start NiFi because system property '" + BOOTSTRAP_PORT_PROPERTY + "' is not a valid integer in the range 1 - 65535");
-        	}
+        if (bootstrapPort != null) {
+            try {
+                final int port = Integer.parseInt(bootstrapPort);
+
+                if (port < 1 || port > 65535) {
+                    throw new RuntimeException("Failed to start NiFi because system property '" + BOOTSTRAP_PORT_PROPERTY + "' is not a valid integer in the range 1 - 65535");
+                }
+
+                bootstrapListener = new BootstrapListener(this, port);
+                bootstrapListener.start();
+            } catch (final NumberFormatException nfe) {
+                throw new RuntimeException("Failed to start NiFi because system property '" + BOOTSTRAP_PORT_PROPERTY + "' is not a valid integer in the range 1 - 65535");
+            }
         } else {
-        	logger.info("NiFi started without Bootstrap Port information provided; will not listen for requests from Bootstrap");
-        	bootstrapListener = null;
+            logger.info("NiFi started without Bootstrap Port information provided; will not listen for requests from Bootstrap");
+            bootstrapListener = null;
         }
-        
+
         // delete the web working dir - if the application does not start successfully
         // the web app directories might be in an invalid state. when this happens
         // jetty will not attempt to re-extract the war into the directory. by removing
@@ -118,7 +119,7 @@ public class NiFi {
         // discover the extensions
         ExtensionManager.discoverExtensions();
         ExtensionManager.logClassLoaderMapping();
-        
+
         DocGenerator.generate(properties);
 
         // load the server from the framework classloader
@@ -129,27 +130,27 @@ public class NiFi {
         final long startTime = System.nanoTime();
         nifiServer = (NiFiServer) jettyConstructor.newInstance(properties);
         nifiServer.setExtensionMapping(extensionMapping);
-        
-        if ( shutdown ) {
-        	logger.info("NiFi has been shutdown via NiFi Bootstrap. Will not start Controller");
+
+        if (shutdown) {
+            logger.info("NiFi has been shutdown via NiFi Bootstrap. Will not start Controller");
         } else {
-	        nifiServer.start();
-	        
-	        final long endTime = System.nanoTime();
-	        logger.info("Controller initialization took " + (endTime - startTime) + " nanoseconds.");
+            nifiServer.start();
+
+            final long endTime = System.nanoTime();
+            logger.info("Controller initialization took " + (endTime - startTime) + " nanoseconds.");
         }
     }
 
     protected void shutdownHook() {
         try {
-        	this.shutdown = true;
-        	
+            this.shutdown = true;
+
             logger.info("Initiating shutdown of Jetty web server...");
             if (nifiServer != null) {
                 nifiServer.stop();
             }
             if (bootstrapListener != null) {
-            	bootstrapListener.stop();
+                bootstrapListener.stop();
             }
             logger.info("Jetty web server shutdown completed (nicely or otherwise).");
         } catch (final Throwable t) {
@@ -164,10 +165,10 @@ public class NiFi {
         final int minRequiredOccurrences = 25;
         final int maxOccurrencesOutOfRange = 15;
         final AtomicLong lastTriggerMillis = new AtomicLong(System.currentTimeMillis());
-        
+
         final ScheduledExecutorService service = Executors.newScheduledThreadPool(1, new ThreadFactory() {
             private final ThreadFactory defaultFactory = Executors.defaultThreadFactory();
-            
+
             @Override
             public Thread newThread(final Runnable r) {
                 final Thread t = defaultFactory.newThread(r);
@@ -176,7 +177,7 @@ public class NiFi {
                 return t;
             }
         });
-        
+
         final AtomicInteger occurrencesOutOfRange = new AtomicInteger(0);
         final AtomicInteger occurences = new AtomicInteger(0);
         final Runnable command = new Runnable() {
@@ -202,7 +203,8 @@ public class NiFi {
                 service.shutdownNow();
 
                 if (occurences.get() < minRequiredOccurrences || occurrencesOutOfRange.get() > maxOccurrencesOutOfRange) {
-                    logger.warn("NiFi has detected that this box is not responding within the expected timing interval, which may cause Processors to be scheduled erratically. Please see the NiFi documentation for more information.");
+                    logger.warn("NiFi has detected that this box is not responding within the expected timing interval, which may cause "
+                            + "Processors to be scheduled erratically. Please see the NiFi documentation for more information.");
                 }
             }
         };
@@ -213,7 +215,7 @@ public class NiFi {
     /**
      * Main entry point of the application.
      *
-     * @param args
+     * @param args things which are ignored
      */
     public static void main(String[] args) {
         logger.info("Launching NiFi...");


[02/11] incubator-nifi git commit: NIFI-271 checkpoint

Posted by jo...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/fingerprint/FingerprintFactory.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/fingerprint/FingerprintFactory.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/fingerprint/FingerprintFactory.java
index 9a8ad28..27eca37 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/fingerprint/FingerprintFactory.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/fingerprint/FingerprintFactory.java
@@ -82,14 +82,13 @@ import org.xml.sax.SAXException;
  * the processor "settings" or "comments" tabs, position information, flow
  * controller settings, and counters.
  *
- * @author unattributed
  */
 public final class FingerprintFactory {
 
     /*
      * Developer Note: This class should be changed with care and coordinated
-     * with all classes that use fingerprinting.  Improper coordination may 
-     * lead to orphaning flow files, especially when flows are reloaded in a 
+     * with all classes that use fingerprinting.  Improper coordination may
+     * lead to orphaning flow files, especially when flows are reloaded in a
      * clustered environment.
      */
     // no fingerprint value
@@ -130,7 +129,7 @@ public final class FingerprintFactory {
      * the flow does not influence the fingerprint generation.
      *
      * @param flowBytes the flow represented as bytes
-     * @param controller
+     * @param controller the controller
      *
      * @return a generated fingerprint
      *
@@ -161,8 +160,8 @@ public final class FingerprintFactory {
      *
      * @return the fingerprint
      *
-     * @throws NoSuchAlgorithmException
-     * @throws UnsupportedEncodingException
+     * @throws NoSuchAlgorithmException ex
+     * @throws UnsupportedEncodingException ex
      */
     private String createFingerprint(final Document flowDoc, final FlowController controller) throws NoSuchAlgorithmException {
         if (flowDoc == null) {
@@ -188,7 +187,7 @@ public final class FingerprintFactory {
      * templates does not influence the fingerprint generation.
      *
      *
-     * @param templates
+     * @param templates collection of templates
      * @return a generated fingerprint
      *
      * @throws FingerprintException if the fingerprint failed to be generated
@@ -253,22 +252,21 @@ public final class FingerprintFactory {
         // root group
         final Element rootGroupElem = (Element) DomUtils.getChildNodesByTagName(flowControllerElem, "rootGroup").item(0);
         addProcessGroupFingerprint(builder, rootGroupElem, controller);
-        
+
         final Element controllerServicesElem = DomUtils.getChild(flowControllerElem, "controllerServices");
-        if ( controllerServicesElem != null ) {
-        	for ( final Element serviceElem : DomUtils.getChildElementsByTagName(controllerServicesElem, "controllerService") ) {
-        		addControllerServiceFingerprint(builder, serviceElem);
-        	}
+        if (controllerServicesElem != null) {
+            for (final Element serviceElem : DomUtils.getChildElementsByTagName(controllerServicesElem, "controllerService")) {
+                addControllerServiceFingerprint(builder, serviceElem);
+            }
         }
-        
+
         final Element reportingTasksElem = DomUtils.getChild(flowControllerElem, "reportingTasks");
-        if ( reportingTasksElem != null ) {
-        	for ( final Element taskElem : DomUtils.getChildElementsByTagName(reportingTasksElem, "reportingTask") ) {
-        		addReportingTaskFingerprint(builder, taskElem);
-        	}
+        if (reportingTasksElem != null) {
+            for (final Element taskElem : DomUtils.getChildElementsByTagName(reportingTasksElem, "reportingTask")) {
+                addReportingTaskFingerprint(builder, taskElem);
+            }
         }
-        
-        
+
         return builder;
     }
 
@@ -851,21 +849,21 @@ public final class FingerprintFactory {
         builder.append(funnel.getId());
         return builder;
     }
-    
+
     private void addControllerServiceFingerprint(final StringBuilder builder, final Element controllerServiceElem) {
-    	final ControllerServiceDTO dto = FlowFromDOMFactory.getControllerService(controllerServiceElem, encryptor);
-    	addControllerServiceFingerprint(builder, dto);
+        final ControllerServiceDTO dto = FlowFromDOMFactory.getControllerService(controllerServiceElem, encryptor);
+        addControllerServiceFingerprint(builder, dto);
     }
-    
+
     private void addControllerServiceFingerprint(final StringBuilder builder, final ControllerServiceDTO dto) {
-    	builder.append(dto.getId());
-    	builder.append(dto.getType());
-    	builder.append(dto.getName());
-    	builder.append(dto.getComments());
-    	builder.append(dto.getAnnotationData());
-    	
-    	final Map<String, String> properties = dto.getProperties();
-    	if (properties == null) {
+        builder.append(dto.getId());
+        builder.append(dto.getType());
+        builder.append(dto.getName());
+        builder.append(dto.getComments());
+        builder.append(dto.getAnnotationData());
+
+        final Map<String, String> properties = dto.getProperties();
+        if (properties == null) {
             builder.append("NO_PROPERTIES");
         } else {
             final SortedMap<String, String> sortedProps = new TreeMap<>(properties);
@@ -880,23 +878,23 @@ public final class FingerprintFactory {
             }
         }
     }
-    
+
     private void addReportingTaskFingerprint(final StringBuilder builder, final Element element) {
-    	final ReportingTaskDTO dto = FlowFromDOMFactory.getReportingTask(element, encryptor);
-    	addReportingTaskFingerprint(builder, dto);
+        final ReportingTaskDTO dto = FlowFromDOMFactory.getReportingTask(element, encryptor);
+        addReportingTaskFingerprint(builder, dto);
     }
-    
+
     private void addReportingTaskFingerprint(final StringBuilder builder, final ReportingTaskDTO dto) {
-    	builder.append(dto.getId());
-    	builder.append(dto.getType());
-    	builder.append(dto.getName());
-    	builder.append(dto.getComments());
-    	builder.append(dto.getSchedulingPeriod());
-    	builder.append(dto.getSchedulingStrategy());
-    	builder.append(dto.getAnnotationData());
-    	
-    	final Map<String, String> properties = dto.getProperties();
-    	if (properties == null) {
+        builder.append(dto.getId());
+        builder.append(dto.getType());
+        builder.append(dto.getName());
+        builder.append(dto.getComments());
+        builder.append(dto.getSchedulingPeriod());
+        builder.append(dto.getSchedulingStrategy());
+        builder.append(dto.getAnnotationData());
+
+        final Map<String, String> properties = dto.getProperties();
+        if (properties == null) {
             builder.append("NO_PROPERTIES");
         } else {
             final SortedMap<String, String> sortedProps = new TreeMap<>(properties);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/groups/StandardProcessGroup.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/groups/StandardProcessGroup.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/groups/StandardProcessGroup.java
index 6a26d09..e0181ea 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/groups/StandardProcessGroup.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/groups/StandardProcessGroup.java
@@ -336,10 +336,10 @@ public final class StandardProcessGroup implements ProcessGroup {
             }
         }
 
-        for ( final RemoteProcessGroup rpg : procGroup.getRemoteProcessGroups() ) {
+        for (final RemoteProcessGroup rpg : procGroup.getRemoteProcessGroups()) {
             rpg.shutdown();
         }
-        
+
         // Recursively shutdown child groups.
         for (final ProcessGroup group : procGroup.getProcessGroups()) {
             shutdown(group);
@@ -677,19 +677,19 @@ public final class StandardProcessGroup implements ProcessGroup {
                 throw new ComponentLifeCycleException("Failed to invoke 'OnRemoved' methods of " + processor, e);
             }
 
-            for ( final Map.Entry<PropertyDescriptor, String> entry : processor.getProperties().entrySet() ) {
+            for (final Map.Entry<PropertyDescriptor, String> entry : processor.getProperties().entrySet()) {
                 final PropertyDescriptor descriptor = entry.getKey();
-                if (descriptor.getControllerServiceDefinition() != null ) {
+                if (descriptor.getControllerServiceDefinition() != null) {
                     final String value = entry.getValue() == null ? descriptor.getDefaultValue() : entry.getValue();
-                    if ( value != null ) {
+                    if (value != null) {
                         final ControllerServiceNode serviceNode = controllerServiceProvider.getControllerServiceNode(value);
-                        if ( serviceNode != null ) {
+                        if (serviceNode != null) {
                             serviceNode.removeReference(processor);
                         }
                     }
                 }
             }
-            
+
             processors.remove(id);
             LogRepositoryFactory.getRepository(processor.getIdentifier()).removeAllObservers();
 
@@ -773,7 +773,9 @@ public final class StandardProcessGroup implements ProcessGroup {
                 } else if (sourceGroup != this || destinationGroup != this) {
                     throw new IllegalStateException("Cannot add Connection to Process Group because source and destination are not both in this Process Group");
                 }
-            } else if (isOutputPort(source)) { // if source is an output port, its group must be a child of this group, and its destination must be in this group (processor/output port) or a child group (input port)
+            } else if (isOutputPort(source)) {
+                // if source is an output port, its group must be a child of this group, and its destination must be in this
+                // group (processor/output port) or a child group (input port)
                 if (!processGroups.containsKey(sourceGroup.getIdentifier())) {
                     throw new IllegalStateException("Cannot add Connection to Process Group because source is an Output Port that does not belong to a child Process Group");
                 }
@@ -798,10 +800,12 @@ public final class StandardProcessGroup implements ProcessGroup {
                     }
                 } else if (isInputPort(destination)) {
                     if (!processGroups.containsKey(destinationGroup.getIdentifier())) {
-                        throw new IllegalStateException("Cannot add Connection to Process Group because its destination is an Input Port but the Input Port does not belong to a child Process Group");
+                        throw new IllegalStateException("Cannot add Connection to Process Group because its destination is an Input "
+                                + "Port but the Input Port does not belong to a child Process Group");
                     }
                 } else if (destinationGroup != this) {
-                    throw new IllegalStateException("Cannot add Connection between " + source + " and " + destination + " because they are in different Process Groups and neither is an Input Port or Output Port");
+                    throw new IllegalStateException("Cannot add Connection between " + source + " and " + destination
+                            + " because they are in different Process Groups and neither is an Input Port or Output Port");
                 }
             }
 
@@ -1207,7 +1211,6 @@ public final class StandardProcessGroup implements ProcessGroup {
         }
     }
 
-
     @Override
     public void disableInputPort(final Port port) {
         readLock.lock();
@@ -1379,6 +1382,7 @@ public final class StandardProcessGroup implements ProcessGroup {
         return allNodes;
     }
 
+    @Override
     public Connectable findConnectable(final String identifier) {
         return findConnectable(identifier, this);
     }
@@ -1518,12 +1522,11 @@ public final class StandardProcessGroup implements ProcessGroup {
         return null;
     }
 
-    
     @Override
     public void addFunnel(final Funnel funnel) {
         addFunnel(funnel, true);
     }
-    
+
     @Override
     public void addFunnel(final Funnel funnel, final boolean autoStart) {
         writeLock.lock();
@@ -1535,8 +1538,8 @@ public final class StandardProcessGroup implements ProcessGroup {
 
             funnel.setProcessGroup(this);
             funnels.put(funnel.getIdentifier(), funnel);
-            
-            if ( autoStart ) {
+
+            if (autoStart) {
                 startFunnel(funnel);
             }
         } finally {
@@ -1634,12 +1637,13 @@ public final class StandardProcessGroup implements ProcessGroup {
             for (final Connectable connectable : connectables) {
                 for (final Connection conn : connectable.getIncomingConnections()) {
                     if (!connectionIds.contains(conn.getIdentifier()) && !connectables.contains(conn.getSource())) {
-                        throw new IllegalStateException(connectable + " cannot be removed because it has incoming connections that are not selected to be deleted");
+                        throw new IllegalStateException(connectable + " cannot be removed because it has incoming connections "
+                                + "that are not selected to be deleted");
                     }
                 }
             }
 
-            // verify that all of the ProcessGroups in the snippet are empty 
+            // verify that all of the ProcessGroups in the snippet are empty
             for (final String groupId : snippet.getProcessGroups()) {
                 final ProcessGroup toRemove = getProcessGroup(groupId);
                 if (!toRemove.isEmpty()) {
@@ -1805,7 +1809,7 @@ public final class StandardProcessGroup implements ProcessGroup {
      * components within this ProcessGroup. If this is not the case, throws
      * {@link IllegalStateException}.
      *
-     * @param snippet
+     * @param snippet the snippet
      * @throws NullPointerException if the argument is null
      * @throws IllegalStateException if the snippet contains an ID that
      * references a component that is not part of this ProcessGroup
@@ -1835,9 +1839,9 @@ public final class StandardProcessGroup implements ProcessGroup {
      * If the ids given are null, will do no validation.
      * </p>
      *
-     * @param ids
-     * @param map
-     * @param componentType
+     * @param ids ids
+     * @param map map
+     * @param componentType type
      */
     private void verifyAllKeysExist(final Set<String> ids, final Map<String, ?> map, final String componentType) {
         if (ids != null) {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/persistence/FlowConfigurationDAO.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/persistence/FlowConfigurationDAO.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/persistence/FlowConfigurationDAO.java
index 8957314..cc3dbea 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/persistence/FlowConfigurationDAO.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/persistence/FlowConfigurationDAO.java
@@ -73,7 +73,7 @@ public interface FlowConfigurationDAO {
     /**
      * Saves all changes made to the given flow to the given File.
      *
-     * @param flow
+     * @param flow to save
      * @throws NullPointerException if the given flow is null
      * @throws IOException If unable to persist state of given flow
      * @throws IllegalStateException if FileFlowDAO not in proper state for
@@ -84,7 +84,7 @@ public interface FlowConfigurationDAO {
     /**
      * Saves all changes made to the given flow to the given File.
      *
-     * @param flow
+     * @param flow to save
      * @param outStream the OutputStream to which the FlowController will be
      * written
      * @throws NullPointerException if the given flow is null
@@ -97,7 +97,7 @@ public interface FlowConfigurationDAO {
     /**
      * Saves all changes made to the given flow to the given File.
      *
-     * @param flow
+     * @param flow to save
      * @param archive if true will also attempt to archive the flow
      * configuration
      * @throws NullPointerException if the given flow is null

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/SimpleProcessLogger.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/SimpleProcessLogger.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/SimpleProcessLogger.java
index 0a345a0..afd0c59 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/SimpleProcessLogger.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/SimpleProcessLogger.java
@@ -269,11 +269,6 @@ public class SimpleProcessLogger implements ProcessorLog {
         logRepository.addLogMessage(LogLevel.DEBUG, msg, os, t);
     }
 
-    /**
-     *
-     * @param msg
-     * @param os
-     */
     @Override
     public void debug(String msg, Object[] os) {
         os = addProcessor(os);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardProcessContext.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardProcessContext.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardProcessContext.java
index d14a459..3e1d1e6 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardProcessContext.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardProcessContext.java
@@ -145,7 +145,7 @@ public class StandardProcessContext implements ProcessContext, ControllerService
     public boolean isControllerServiceEnabling(final String serviceIdentifier) {
         return controllerServiceProvider.isControllerServiceEnabling(serviceIdentifier);
     }
-    
+
     @Override
     public ControllerServiceLookup getControllerServiceLookup() {
         return this;
@@ -174,10 +174,10 @@ public class StandardProcessContext implements ProcessContext, ControllerService
 
         return set;
     }
-    
+
     @Override
     public String getControllerServiceName(final String serviceIdentifier) {
-    	return controllerServiceProvider.getControllerServiceName(serviceIdentifier);
+        return controllerServiceProvider.getControllerServiceName(serviceIdentifier);
     }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardPropertyValue.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardPropertyValue.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardPropertyValue.java
index c3b7f4f..b320a61 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardPropertyValue.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardPropertyValue.java
@@ -49,9 +49,9 @@ public final class StandardPropertyValue implements PropertyValue {
      * information should be provided so that calls to
      * {@link #evaluateAttributeExpressions()} are much more efficient
      *
-     * @param rawValue
-     * @param serviceLookup
-     * @param preparedQuery
+     * @param rawValue value
+     * @param serviceLookup lookup
+     * @param preparedQuery query
      */
     public StandardPropertyValue(final String rawValue, final ControllerServiceLookup serviceLookup, final PreparedQuery preparedQuery) {
         this.rawValue = rawValue;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardSchedulingContext.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardSchedulingContext.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardSchedulingContext.java
index c37a80d..ef73728 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardSchedulingContext.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardSchedulingContext.java
@@ -46,7 +46,7 @@ public class StandardSchedulingContext implements SchedulingContext {
             throw new IllegalArgumentException("Cannot lease Controller Service because no Controller Service exists with identifier " + identifier);
         }
 
-        if ( serviceNode.getState() != ControllerServiceState.ENABLED ) {
+        if (serviceNode.getState() != ControllerServiceState.ENABLED) {
             throw new IllegalStateException("Cannot lease Controller Service because Controller Service " + serviceNode.getProxiedControllerService() + " is not currently enabled");
         }
 

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardValidationContext.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardValidationContext.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardValidationContext.java
index c51cb9a..e627dd3 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardValidationContext.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/processor/StandardValidationContext.java
@@ -47,8 +47,12 @@ public class StandardValidationContext implements ValidationContext {
     public StandardValidationContext(final ControllerServiceProvider controllerServiceProvider, final Map<PropertyDescriptor, String> properties, final String annotationData) {
         this(controllerServiceProvider, Collections.<String>emptySet(), properties, annotationData);
     }
-    
-    public StandardValidationContext(final ControllerServiceProvider controllerServiceProvider, final Set<String> serviceIdentifiersToNotValidate, final Map<PropertyDescriptor, String> properties, final String annotationData) {
+
+    public StandardValidationContext(
+            final ControllerServiceProvider controllerServiceProvider,
+            final Set<String> serviceIdentifiersToNotValidate,
+            final Map<PropertyDescriptor, String> properties,
+            final String annotationData) {
         this.controllerServiceProvider = controllerServiceProvider;
         this.properties = new HashMap<>(properties);
         this.annotationData = annotationData;
@@ -67,7 +71,7 @@ public class StandardValidationContext implements ValidationContext {
         }
 
         expressionLanguageSupported = new HashMap<>(properties.size());
-        for ( final PropertyDescriptor descriptor : properties.keySet() ) {
+        for (final PropertyDescriptor descriptor : properties.keySet()) {
             expressionLanguageSupported.put(descriptor.getName(), descriptor.isExpressionLanguageSupported());
         }
     }
@@ -113,17 +117,17 @@ public class StandardValidationContext implements ValidationContext {
     public boolean isValidationRequired(final ControllerService service) {
         return !serviceIdentifiersToNotValidate.contains(service.getIdentifier());
     }
-    
+
     @Override
     public boolean isExpressionLanguagePresent(final String value) {
-        if ( value == null ) {
+        if (value == null) {
             return false;
         }
-        
+
         final List<Range> elRanges = Query.extractExpressionRanges(value);
         return (elRanges != null && !elRanges.isEmpty());
     }
-    
+
     @Override
     public boolean isExpressionLanguageSupported(final String propertyName) {
         final Boolean supported = expressionLanguageSupported.get(propertyName);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/remote/RemoteNiFiUtils.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/remote/RemoteNiFiUtils.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/remote/RemoteNiFiUtils.java
index 23dfdda..bed5279 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/remote/RemoteNiFiUtils.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/remote/RemoteNiFiUtils.java
@@ -37,51 +37,47 @@ import com.sun.jersey.api.client.UniformInterfaceException;
 import com.sun.jersey.api.client.WebResource;
 import com.sun.jersey.core.util.MultivaluedMapImpl;
 
-/**
- *
- */
 public class RemoteNiFiUtils {
 
     public static final String CONTROLLER_URI_PATH = "/controller";
 
     private static final int CONNECT_TIMEOUT = 10000;
     private static final int READ_TIMEOUT = 10000;
-    
+
     private final Client client;
-    
+
     public RemoteNiFiUtils(final SSLContext sslContext) {
         this.client = getClient(sslContext);
     }
-    
 
     /**
      * Gets the content at the specified URI.
      *
-     * @param uri
-     * @param timeoutMillis
-     * @return
-     * @throws ClientHandlerException
-     * @throws UniformInterfaceException
+     * @param uri uri to retrieve
+     * @param timeoutMillis time to wait in millis
+     * @return response
+     * @throws ClientHandlerException ex
+     * @throws UniformInterfaceException ex
      */
     public ClientResponse get(final URI uri, final int timeoutMillis) throws ClientHandlerException, UniformInterfaceException {
         return get(uri, timeoutMillis, null);
     }
-    
+
     /**
      * Gets the content at the specified URI using the given query parameters.
      *
-     * @param uri
-     * @param timeoutMillis
-     * @param queryParams 
-     * @return
-     * @throws ClientHandlerException
-     * @throws UniformInterfaceException
+     * @param uri to retrieve
+     * @param timeoutMillis wait period in millis
+     * @param queryParams query parameters
+     * @return response
+     * @throws ClientHandlerException ex
+     * @throws UniformInterfaceException ex
      */
     public ClientResponse get(final URI uri, final int timeoutMillis, final Map<String, String> queryParams) throws ClientHandlerException, UniformInterfaceException {
         // perform the request
         WebResource webResource = client.resource(uri);
-        if ( queryParams != null ) {
-            for ( final Map.Entry<String, String> queryEntry : queryParams.entrySet() ) {
+        if (queryParams != null) {
+            for (final Map.Entry<String, String> queryEntry : queryParams.entrySet()) {
                 webResource = webResource.queryParam(queryEntry.getKey(), queryEntry.getValue());
             }
         }
@@ -95,11 +91,11 @@ public class RemoteNiFiUtils {
     /**
      * Performs a HEAD request to the specified URI.
      *
-     * @param uri
-     * @param timeoutMillis
-     * @return
-     * @throws ClientHandlerException
-     * @throws UniformInterfaceException
+     * @param uri to retrieve
+     * @param timeoutMillis wait time in millis
+     * @return response
+     * @throws ClientHandlerException ex
+     * @throws UniformInterfaceException ex
      */
     public ClientResponse head(final URI uri, final int timeoutMillis) throws ClientHandlerException, UniformInterfaceException {
         // perform the request
@@ -109,12 +105,6 @@ public class RemoteNiFiUtils {
         return webResource.head();
     }
 
-    /**
-     * Gets a client based on the specified URI.
-     * 
-     * @param uri
-     * @return 
-     */
     private Client getClient(final SSLContext sslContext) {
         final Client client;
         if (sslContext == null) {
@@ -128,26 +118,27 @@ public class RemoteNiFiUtils {
 
         return client;
     }
-    
-    
+
     /**
-     * Returns the port on which the remote instance is listening for Flow File transfers, or <code>null</code> if the remote instance
-     * is not configured to use Site-to-Site transfers.
-     * 
-     * @param uri the base URI of the remote instance. This should include the path only to the nifi-api level, as well as the protocol, host, and port.
-     * @param timeoutMillis
-     * @return
-     * @throws IOException
+     * Returns the port on which the remote instance is listening for Flow File
+     * transfers, or <code>null</code> if the remote instance is not configured
+     * to use Site-to-Site transfers.
+     *
+     * @param uri the base URI of the remote instance. This should include the
+     * path only to the nifi-api level, as well as the protocol, host, and port.
+     * @param timeoutMillis wait time in millis
+     * @return port number
+     * @throws IOException ex
      */
     public Integer getRemoteListeningPort(final String uri, final int timeoutMillis) throws IOException {
-    	try {
-			final URI uriObject = new URI(uri + CONTROLLER_URI_PATH);
-			return getRemoteListeningPort(uriObject, timeoutMillis);
-		} catch (URISyntaxException e) {
-			throw new IOException("Unable to establish connection to remote host because URI is invalid: " + uri);
-		}
+        try {
+            final URI uriObject = new URI(uri + CONTROLLER_URI_PATH);
+            return getRemoteListeningPort(uriObject, timeoutMillis);
+        } catch (URISyntaxException e) {
+            throw new IOException("Unable to establish connection to remote host because URI is invalid: " + uri);
+        }
     }
-    
+
     public String getRemoteRootGroupId(final String uri, final int timeoutMillis) throws IOException {
         try {
             final URI uriObject = new URI(uri + CONTROLLER_URI_PATH);
@@ -156,7 +147,7 @@ public class RemoteNiFiUtils {
             throw new IOException("Unable to establish connection to remote host because URI is invalid: " + uri);
         }
     }
-    
+
     public String getRemoteInstanceId(final String uri, final int timeoutMillis) throws IOException {
         try {
             final URI uriObject = new URI(uri + CONTROLLER_URI_PATH);
@@ -165,26 +156,27 @@ public class RemoteNiFiUtils {
             throw new IOException("Unable to establish connection to remote host because URI is invalid: " + uri);
         }
     }
-    
+
     /**
-     * Returns the port on which the remote instance is listening for Flow File transfers, or <code>null</code> if the remote instance
-     * is not configured to use Site-to-Site transfers.
-     * 
+     * Returns the port on which the remote instance is listening for Flow File
+     * transfers, or <code>null</code> if the remote instance is not configured
+     * to use Site-to-Site transfers.
+     *
      * @param uri the full URI to fetch, including the path.
-     * @return
-     * @throws IOException
+     * @return port
+     * @throws IOException ex
      */
     private Integer getRemoteListeningPort(final URI uri, final int timeoutMillis) throws IOException {
-    	return getController(uri, timeoutMillis).getRemoteSiteListeningPort();
+        return getController(uri, timeoutMillis).getRemoteSiteListeningPort();
     }
-    
+
     private String getRemoteRootGroupId(final URI uri, final int timeoutMillis) throws IOException {
         return getController(uri, timeoutMillis).getId();
     }
-    
+
     public ControllerDTO getController(final URI uri, final int timeoutMillis) throws IOException {
         final ClientResponse response = get(uri, timeoutMillis);
-        
+
         if (Status.OK.getStatusCode() == response.getStatusInfo().getStatusCode()) {
             final ControllerEntity entity = response.getEntity(ControllerEntity.class);
             return entity.getController();
@@ -193,12 +185,12 @@ public class RemoteNiFiUtils {
             throw new IOException("Got HTTP response Code " + response.getStatusInfo().getStatusCode() + ": " + response.getStatusInfo().getReasonPhrase() + " with explanation: " + responseMessage);
         }
     }
-    
+
     /**
      * Issues a registration request on behalf of the current user.
-     * 
-     * @param baseApiUri 
-     * @return  
+     *
+     * @param baseApiUri uri to register with
+     * @return response
      */
     public ClientResponse issueRegistrationRequest(String baseApiUri) {
         final URI uri = URI.create(String.format("%s/%s", baseApiUri, "/controller/users"));
@@ -206,10 +198,10 @@ public class RemoteNiFiUtils {
         // set up the query params
         MultivaluedMapImpl entity = new MultivaluedMapImpl();
         entity.add("justification", "A Remote instance of NiFi has attempted to create a reference to this NiFi. This action must be approved first.");
-        
+
         // create the web resource
         WebResource webResource = client.resource(uri);
-        
+
         // get the client utils and make the request
         return webResource.accept(MediaType.APPLICATION_JSON).type(MediaType.APPLICATION_FORM_URLENCODED).entity(entity).post(ClientResponse.class);
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/remote/StandardRemoteProcessGroup.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/remote/StandardRemoteProcessGroup.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/remote/StandardRemoteProcessGroup.java
index 55575c6..f4b5975 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/remote/StandardRemoteProcessGroup.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/remote/StandardRemoteProcessGroup.java
@@ -87,7 +87,7 @@ public class StandardRemoteProcessGroup implements RemoteProcessGroup {
     public static final int OK_STATUS_CODE = Status.OK.getStatusCode();
     public static final int UNAUTHORIZED_STATUS_CODE = Status.UNAUTHORIZED.getStatusCode();
     public static final int FORBIDDEN_STATUS_CODE = Status.FORBIDDEN.getStatusCode();
-    
+
     private final String id;
 
     private final URI targetUri;
@@ -194,7 +194,7 @@ public class StandardRemoteProcessGroup implements RemoteProcessGroup {
     public void shutdown() {
         backgroundThreadExecutor.shutdown();
     }
-    
+
     @Override
     public String getIdentifier() {
         return id;
@@ -381,7 +381,7 @@ public class StandardRemoteProcessGroup implements RemoteProcessGroup {
      * Returns a boolean indicating whether or not an Output Port exists with
      * the given ID
      *
-     * @param id
+     * @param id identifier of port
      * @return <code>true</code> if an Output Port exists with the given ID,
      * <code>false</code> otherwise.
      */
@@ -562,11 +562,9 @@ public class StandardRemoteProcessGroup implements RemoteProcessGroup {
     }
 
     /**
-     * Returns an {@link RemoteGroupPort} that can be used to send FlowFiles to
-     * the port whose ID is given on the remote instance
-     *
      * @param portIdentifier the ID of the Port to send FlowFiles to
-     * @return
+     * @return {@link RemoteGroupPort} that can be used to send FlowFiles to the
+     * port whose ID is given on the remote instance
      */
     @Override
     public RemoteGroupPort getInputPort(final String portIdentifier) {
@@ -602,7 +600,7 @@ public class StandardRemoteProcessGroup implements RemoteProcessGroup {
      * Adds an InputPort to this ProcessGroup that is described by the given
      * DTO.
      *
-     * @param descriptor
+     * @param descriptor port descriptor
      *
      * @throws IllegalStateException if an Input Port already exists with the ID
      * given by the ID of the DTO.
@@ -630,13 +628,6 @@ public class StandardRemoteProcessGroup implements RemoteProcessGroup {
         }
     }
 
-    /**
-     * Returns an {@link RemoteGroupPort} that can be used to receive FlowFiles
-     * from the port whose name is given on the remote instance
-     *
-     * @param portIdentifier the name of the Port to receive FlowFiles from
-     * @return
-     */
     @Override
     public RemoteGroupPort getOutputPort(final String portIdentifier) {
         readLock.lock();
@@ -776,7 +767,7 @@ public class StandardRemoteProcessGroup implements RemoteProcessGroup {
         try {
             // perform the request
             final ClientResponse response = utils.get(uri, getCommunicationsTimeout(TimeUnit.MILLISECONDS));
-            
+
             if (!Response.Status.Family.SUCCESSFUL.equals(response.getStatusInfo().getFamily())) {
                 writeLock.lock();
                 try {
@@ -799,7 +790,8 @@ public class StandardRemoteProcessGroup implements RemoteProcessGroup {
 
                 // consume the entity entirely
                 response.getEntity(String.class);
-                throw new CommunicationsException("Unable to communicate with Remote NiFi at URI " + uriVal + ". Got HTTP Error Code " + response.getStatus() + ": " + response.getStatusInfo().getReasonPhrase());
+                throw new CommunicationsException("Unable to communicate with Remote NiFi at URI " + uriVal + ". Got HTTP Error Code "
+                        + response.getStatus() + ": " + response.getStatusInfo().getReasonPhrase());
             }
 
             final ControllerEntity entity = response.getEntity(ControllerEntity.class);
@@ -873,8 +865,8 @@ public class StandardRemoteProcessGroup implements RemoteProcessGroup {
     /**
      * Converts a set of ports into a set of remote process group ports.
      *
-     * @param ports
-     * @return
+     * @param ports to convert
+     * @return descriptors of ports
      */
     private Set<RemoteProcessGroupPortDescriptor> convertRemotePort(final Set<PortDTO> ports) {
         Set<RemoteProcessGroupPortDescriptor> remotePorts = null;
@@ -1084,7 +1076,6 @@ public class StandardRemoteProcessGroup implements RemoteProcessGroup {
         }
     }
 
-
     @Override
     public EventReporter getEventReporter() {
         return eventReporter;
@@ -1097,10 +1088,10 @@ public class StandardRemoteProcessGroup implements RemoteProcessGroup {
             try {
                 final RemoteNiFiUtils utils = new RemoteNiFiUtils(isWebApiSecure() ? sslContext : null);
                 final ClientResponse response = utils.get(new URI(apiUri + CONTROLLER_URI_PATH), getCommunicationsTimeout(TimeUnit.MILLISECONDS));
-                
+
                 final int statusCode = response.getStatus();
-                
-                if ( statusCode == OK_STATUS_CODE ) {
+
+                if (statusCode == OK_STATUS_CODE) {
                     final ControllerEntity entity = response.getEntity(ControllerEntity.class);
                     final ControllerDTO dto = entity.getController();
 
@@ -1121,10 +1112,10 @@ public class StandardRemoteProcessGroup implements RemoteProcessGroup {
                     final String remoteInstanceId = dto.getInstanceId();
                     boolean isPointingToCluster = flowController.getInstanceId().equals(remoteInstanceId);
                     pointsToCluster.set(isPointingToCluster);
-                } else if ( statusCode == UNAUTHORIZED_STATUS_CODE ) {
+                } else if (statusCode == UNAUTHORIZED_STATUS_CODE) {
                     try {
                         final ClientResponse requestAccountResponse = utils.issueRegistrationRequest(apiUri.toString());
-                        if (Response.Status.Family.SUCCESSFUL.equals(requestAccountResponse.getStatusInfo().getFamily()) ) {
+                        if (Response.Status.Family.SUCCESSFUL.equals(requestAccountResponse.getStatusInfo().getFamily())) {
                             logger.info("{} Issued a Request to communicate with remote instance", this);
                         } else {
                             logger.error("{} Failed to request account: got unexpected response code of {}:{}", new Object[]{
@@ -1138,7 +1129,7 @@ public class StandardRemoteProcessGroup implements RemoteProcessGroup {
                     }
 
                     authorizationIssue = response.getEntity(String.class);
-                } else if ( statusCode == FORBIDDEN_STATUS_CODE ) {
+                } else if (statusCode == FORBIDDEN_STATUS_CODE) {
                     authorizationIssue = response.getEntity(String.class);
                 } else {
                     final String message = response.getEntity(String.class);
@@ -1158,7 +1149,8 @@ public class StandardRemoteProcessGroup implements RemoteProcessGroup {
     public void setYieldDuration(final String yieldDuration) {
         // verify the syntax
         if (!FormatUtils.TIME_DURATION_PATTERN.matcher(yieldDuration).matches()) {
-            throw new IllegalArgumentException("Improperly formatted Time Period; should be of syntax <number> <unit> where <number> is a positive integer and unit is one of the valid Time Units, such as nanos, millis, sec, min, hour, day");
+            throw new IllegalArgumentException("Improperly formatted Time Period; should be of syntax <number> <unit> where "
+                    + "<number> is a positive integer and unit is one of the valid Time Units, such as nanos, millis, sec, min, hour, day");
         }
 
         this.yieldDuration = yieldDuration;
@@ -1168,7 +1160,7 @@ public class StandardRemoteProcessGroup implements RemoteProcessGroup {
     public String getYieldDuration() {
         return yieldDuration;
     }
-    
+
     @Override
     public void verifyCanDelete() {
         verifyCanDelete(false);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/services/FlowService.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/services/FlowService.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/services/FlowService.java
index 196358a..71cf969 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/services/FlowService.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/services/FlowService.java
@@ -71,8 +71,8 @@ public interface FlowService extends LifeCycle {
      * that time the latest called state of the flow controller will be used. In
      * database terms this technique is referred to as 'write-delay'.
      *
-     * @param delayUnit
-     * @param delay
+     * @param delayUnit unit of delay
+     * @param delay period of delay
      */
     void saveFlowChanges(TimeUnit delayUnit, long delay);
 
@@ -82,8 +82,8 @@ public interface FlowService extends LifeCycle {
      * that time the latest called state of the flow controller will be used. In
      * database terms this technique is referred to as 'write-delay'.
      *
-     * @param delayUnit
-     * @param delay
+     * @param delayUnit unit of delay
+     * @param delay period of delay
      * @param archive if true means the user wants the flow configuration to be
      * archived as well
      */
@@ -131,8 +131,7 @@ public interface FlowService extends LifeCycle {
     void copyCurrentFlow(OutputStream os) throws IOException;
 
     /**
-     * Returns the managed controller.
-     * @return 
+     * @return the managed controller
      */
     FlowController getController();
 

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/spring/FlowControllerFactoryBean.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/spring/FlowControllerFactoryBean.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/spring/FlowControllerFactoryBean.java
index 1804f30..665738b 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/spring/FlowControllerFactoryBean.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/spring/FlowControllerFactoryBean.java
@@ -45,7 +45,7 @@ public class FlowControllerFactoryBean implements FactoryBean, ApplicationContex
     @Override
     public Object getObject() throws Exception {
         /*
-         * If configured for the cluster manager, then the flow controller is never used.  
+         * If configured for the cluster manager, then the flow controller is never used.
          */
         if (properties.isClusterManager()) {
             return null;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/spring/StandardFlowServiceFactoryBean.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/spring/StandardFlowServiceFactoryBean.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/spring/StandardFlowServiceFactoryBean.java
index 92e8bfd..cfd855f 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/spring/StandardFlowServiceFactoryBean.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/spring/StandardFlowServiceFactoryBean.java
@@ -46,7 +46,7 @@ public class StandardFlowServiceFactoryBean implements FactoryBean, ApplicationC
     @Override
     public Object getObject() throws Exception {
         /*
-         * If configured for the cluster manager, then the flow controller is never used.  
+         * If configured for the cluster manager, then the flow controller is never used.
          */
         if (properties.isClusterManager()) {
             return null;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/util/DomUtils.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/util/DomUtils.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/util/DomUtils.java
index da4f04d..9cc3b1f 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/util/DomUtils.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/util/DomUtils.java
@@ -27,14 +27,14 @@ public class DomUtils {
 
     public static String getChildText(final Element element, final String tagName) {
         final Element childElement = getChild(element, tagName);
-        if ( childElement == null ) {
+        if (childElement == null) {
             return null;
         }
-        
+
         final String text = childElement.getTextContent();
         return (text == null) ? null : text.trim();
     }
-    
+
     public static Element getChild(final Element element, final String tagName) {
         final List<Element> children = getChildElementsByTagName(element, tagName);
         if (children.isEmpty()) {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/util/ReflectionUtils.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/util/ReflectionUtils.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/util/ReflectionUtils.java
index a8a4596..d7573c3 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/util/ReflectionUtils.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/util/ReflectionUtils.java
@@ -38,63 +38,65 @@ public class ReflectionUtils {
      * are supplied by the <code>args</code> parameter than needed, the extra
      * arguments will be ignored.
      *
-     * @param annotation
-     * @param instance
-     * @param args
-     * @throws InvocationTargetException
-     * @throws IllegalArgumentException
-     * @throws IllegalAccessException
+     * @param annotation annotation
+     * @param instance instance
+     * @param args args
+     * @throws InvocationTargetException ex
+     * @throws IllegalArgumentException ex
+     * @throws IllegalAccessException ex
      */
-    public static void invokeMethodsWithAnnotation(final Class<? extends Annotation> annotation, final Object instance, final Object... args) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
+    public static void invokeMethodsWithAnnotation(
+            final Class<? extends Annotation> annotation, final Object instance, final Object... args) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
         invokeMethodsWithAnnotation(annotation, null, instance, args);
     }
 
-    
     /**
      * Invokes all methods on the given instance that have been annotated with
-     * the given preferredAnnotation and if no such method exists will invoke all
-     * methods on the given instance that have been annotated with the given
-     * alternateAnnotation, if any exists. If the signature of the method that is defined in
-     * <code>instance</code> uses 1 or more parameters, those parameters must be
-     * specified by the <code>args</code> parameter. However, if more arguments
-     * are supplied by the <code>args</code> parameter than needed, the extra
-     * arguments will be ignored.
+     * the given preferredAnnotation and if no such method exists will invoke
+     * all methods on the given instance that have been annotated with the given
+     * alternateAnnotation, if any exists. If the signature of the method that
+     * is defined in <code>instance</code> uses 1 or more parameters, those
+     * parameters must be specified by the <code>args</code> parameter. However,
+     * if more arguments are supplied by the <code>args</code> parameter than
+     * needed, the extra arguments will be ignored.
      *
-     * @param preferredAnnotation
-     * @param alternateAnnotation
-     * @param instance
-     * @param args
-     * @throws InvocationTargetException
-     * @throws IllegalArgumentException
-     * @throws IllegalAccessException
+     * @param preferredAnnotation preferred
+     * @param alternateAnnotation alternate
+     * @param instance instance
+     * @param args args
+     * @throws InvocationTargetException ex
+     * @throws IllegalArgumentException ex
+     * @throws IllegalAccessException ex
      */
-    public static void invokeMethodsWithAnnotation(final Class<? extends Annotation> preferredAnnotation, final Class<? extends Annotation> alternateAnnotation, final Object instance, final Object... args) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
+    public static void invokeMethodsWithAnnotation(
+            final Class<? extends Annotation> preferredAnnotation, final Class<? extends Annotation> alternateAnnotation, final Object instance, final Object... args)
+            throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
         final List<Class<? extends Annotation>> annotationClasses = new ArrayList<>(alternateAnnotation == null ? 1 : 2);
         annotationClasses.add(preferredAnnotation);
-        if ( alternateAnnotation != null ) {
+        if (alternateAnnotation != null) {
             annotationClasses.add(alternateAnnotation);
         }
-        
+
         boolean annotationFound = false;
-        for ( final Class<? extends Annotation> annotationClass : annotationClasses ) {
-            if ( annotationFound ) {
+        for (final Class<? extends Annotation> annotationClass : annotationClasses) {
+            if (annotationFound) {
                 break;
             }
-            
+
             try {
                 for (final Method method : instance.getClass().getMethods()) {
                     if (method.isAnnotationPresent(annotationClass)) {
                         annotationFound = true;
                         final boolean isAccessible = method.isAccessible();
                         method.setAccessible(true);
-        
+
                         try {
                             final Class<?>[] argumentTypes = method.getParameterTypes();
                             if (argumentTypes.length > args.length) {
                                 throw new IllegalArgumentException(String.format("Unable to invoke method %1$s on %2$s because method expects %3$s parameters but only %4$s were given",
                                         method.getName(), instance, argumentTypes.length, args.length));
                             }
-        
+
                             for (int i = 0; i < argumentTypes.length; i++) {
                                 final Class<?> argType = argumentTypes[i];
                                 if (!argType.isAssignableFrom(args[i].getClass())) {
@@ -103,7 +105,7 @@ public class ReflectionUtils {
                                             method.getName(), instance, i, argType, args[i].getClass()));
                                 }
                             }
-        
+
                             if (argumentTypes.length == args.length) {
                                 method.invoke(instance, args);
                             } else {
@@ -111,7 +113,7 @@ public class ReflectionUtils {
                                 for (int i = 0; i < argsToPass.length; i++) {
                                     argsToPass[i] = args[i];
                                 }
-        
+
                                 method.invoke(instance, argsToPass);
                             }
                         } finally {
@@ -122,7 +124,7 @@ public class ReflectionUtils {
                     }
                 }
             } catch (final InvocationTargetException ite) {
-                if ( ite.getCause() instanceof RuntimeException ) {
+                if (ite.getCause() instanceof RuntimeException) {
                     throw (RuntimeException) ite.getCause();
                 } else {
                     throw ite;
@@ -131,7 +133,6 @@ public class ReflectionUtils {
         }
     }
 
-    
     /**
      * Invokes all methods on the given instance that have been annotated with
      * the given Annotation. If the signature of the method that is defined in
@@ -140,9 +141,9 @@ public class ReflectionUtils {
      * are supplied by the <code>args</code> parameter than needed, the extra
      * arguments will be ignored.
      *
-     * @param annotation
-     * @param instance
-     * @param args
+     * @param annotation annotation
+     * @param instance instance
+     * @param args args
      * @return <code>true</code> if all appropriate methods were invoked and
      * returned without throwing an Exception, <code>false</code> if one of the
      * methods threw an Exception or could not be invoked; if <code>false</code>
@@ -151,8 +152,7 @@ public class ReflectionUtils {
     public static boolean quietlyInvokeMethodsWithAnnotation(final Class<? extends Annotation> annotation, final Object instance, final Object... args) {
         return quietlyInvokeMethodsWithAnnotation(annotation, null, instance, null, args);
     }
-    
-    
+
     /**
      * Invokes all methods on the given instance that have been annotated with
      * the given Annotation. If the signature of the method that is defined in
@@ -161,9 +161,10 @@ public class ReflectionUtils {
      * are supplied by the <code>args</code> parameter than needed, the extra
      * arguments will be ignored.
      *
-     * @param annotation
-     * @param instance
-     * @param args
+     * @param annotation annotation
+     * @param instance instance
+     * @param logger logger
+     * @param args args
      * @return <code>true</code> if all appropriate methods were invoked and
      * returned without throwing an Exception, <code>false</code> if one of the
      * methods threw an Exception or could not be invoked; if <code>false</code>
@@ -172,78 +173,79 @@ public class ReflectionUtils {
     public static boolean quietlyInvokeMethodsWithAnnotation(final Class<? extends Annotation> annotation, final Object instance, final ProcessorLog logger, final Object... args) {
         return quietlyInvokeMethodsWithAnnotation(annotation, null, instance, logger, args);
     }
-    
-    
+
     /**
      * Invokes all methods on the given instance that have been annotated with
-     * the given preferredAnnotation and if no such method exists will invoke all methods
-     * on the given instance that have been annotated with the given
-     * alternateAnnotation, if any exists. If the signature of the method that is defined in
-     * <code>instance</code> uses 1 or more parameters, those parameters must be
-     * specified by the <code>args</code> parameter. However, if more arguments
-     * are supplied by the <code>args</code> parameter than needed, the extra
-     * arguments will be ignored.
+     * the given preferredAnnotation and if no such method exists will invoke
+     * all methods on the given instance that have been annotated with the given
+     * alternateAnnotation, if any exists. If the signature of the method that
+     * is defined in <code>instance</code> uses 1 or more parameters, those
+     * parameters must be specified by the <code>args</code> parameter. However,
+     * if more arguments are supplied by the <code>args</code> parameter than
+     * needed, the extra arguments will be ignored.
      *
-     * @param preferredAnnotation
-     * @param alternateAnnotation
-     * @param instance
-     * @param logger the ProcessorLog to use for logging any errors. If null, will use own logger, but that will not generate bulletins
-     *          or easily tie to the Processor's log messages.
-     * @param args
+     * @param preferredAnnotation preferred
+     * @param alternateAnnotation alternate
+     * @param instance instance
+     * @param logger the ProcessorLog to use for logging any errors. If null,
+     * will use own logger, but that will not generate bulletins or easily tie
+     * to the Processor's log messages.
+     * @param args args
      * @return <code>true</code> if all appropriate methods were invoked and
      * returned without throwing an Exception, <code>false</code> if one of the
      * methods threw an Exception or could not be invoked; if <code>false</code>
      * is returned, an error will have been logged.
      */
-    public static boolean quietlyInvokeMethodsWithAnnotation(final Class<? extends Annotation> preferredAnnotation, final Class<? extends Annotation> alternateAnnotation, final Object instance, final ProcessorLog logger, final Object... args) {
+    public static boolean quietlyInvokeMethodsWithAnnotation(
+            final Class<? extends Annotation> preferredAnnotation, final Class<? extends Annotation> alternateAnnotation, final Object instance, final ProcessorLog logger, final Object... args) {
         final List<Class<? extends Annotation>> annotationClasses = new ArrayList<>(alternateAnnotation == null ? 1 : 2);
         annotationClasses.add(preferredAnnotation);
-        if ( alternateAnnotation != null ) {
+        if (alternateAnnotation != null) {
             annotationClasses.add(alternateAnnotation);
         }
-        
+
         boolean annotationFound = false;
-        for ( final Class<? extends Annotation> annotationClass : annotationClasses ) {
-            if ( annotationFound ) {
+        for (final Class<? extends Annotation> annotationClass : annotationClasses) {
+            if (annotationFound) {
                 break;
             }
-            
+
             for (final Method method : instance.getClass().getMethods()) {
                 if (method.isAnnotationPresent(annotationClass)) {
                     annotationFound = true;
-                    
+
                     final boolean isAccessible = method.isAccessible();
                     method.setAccessible(true);
-    
+
                     try {
                         final Class<?>[] argumentTypes = method.getParameterTypes();
                         if (argumentTypes.length > args.length) {
-                            if ( logger == null ) {
+                            if (logger == null) {
                                 LOG.error("Unable to invoke method {} on {} because method expects {} parameters but only {} were given",
-                                    new Object[]{method.getName(), instance, argumentTypes.length, args.length});
+                                        new Object[]{method.getName(), instance, argumentTypes.length, args.length});
                             } else {
                                 logger.error("Unable to invoke method {} on {} because method expects {} parameters but only {} were given",
                                         new Object[]{method.getName(), instance, argumentTypes.length, args.length});
                             }
-                            
+
                             return false;
                         }
-    
+
                         for (int i = 0; i < argumentTypes.length; i++) {
                             final Class<?> argType = argumentTypes[i];
                             if (!argType.isAssignableFrom(args[i].getClass())) {
-                                if ( logger == null ) {
+                                if (logger == null) {
                                     LOG.error("Unable to invoke method {} on {} because method parameter {} is expected to be of type {} but argument passed was of type {}",
-                                        new Object[]{method.getName(), instance, i, argType, args[i].getClass()});
+                                            new Object[]{method.getName(), instance, i, argType, args[i].getClass()});
                                 } else {
                                     logger.error("Unable to invoke method {} on {} because method parameter {} is expected to be of type {} but argument passed was of type {}",
                                             new Object[]{method.getName(), instance, i, argType, args[i].getClass()});
                                 }
-                                
+
                                 return false;
                             }
                         }
-    
+
                         try {
                             if (argumentTypes.length == args.length) {
                                 method.invoke(instance, args);
@@ -252,24 +254,24 @@ public class ReflectionUtils {
                                 for (int i = 0; i < argsToPass.length; i++) {
                                     argsToPass[i] = args[i];
                                 }
-    
+
                                 method.invoke(instance, argsToPass);
                             }
                         } catch (final InvocationTargetException ite) {
-                            if ( logger == null ) {
+                            if (logger == null) {
                                 LOG.error("Unable to invoke method {} on {} due to {}", new Object[]{method.getName(), instance, ite.getCause()});
                                 LOG.error("", ite.getCause());
                             } else {
                                 logger.error("Unable to invoke method {} on {} due to {}", new Object[]{method.getName(), instance, ite.getCause()});
                             }
                         } catch (final IllegalAccessException | IllegalArgumentException t) {
-                            if ( logger == null ) {
+                            if (logger == null) {
                                 LOG.error("Unable to invoke method {} on {} due to {}", new Object[]{method.getName(), instance, t});
                                 LOG.error("", t);
                             } else {
                                 logger.error("Unable to invoke method {} on {} due to {}", new Object[]{method.getName(), instance, t});
                             }
-                            
+
                             return false;
                         }
                     } finally {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/util/SnippetUtils.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/util/SnippetUtils.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/util/SnippetUtils.java
index ce39f08..81d00e6 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/util/SnippetUtils.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/util/SnippetUtils.java
@@ -38,9 +38,9 @@ public final class SnippetUtils {
      * Moves the content of the specified template around the specified
      * location.
      *
-     * @param snippet
-     * @param x
-     * @param y
+     * @param snippet snippet
+     * @param x x location
+     * @param y y location
      */
     public static void moveSnippet(FlowSnippetDTO snippet, Double x, Double y) {
         // ensure the point is specified
@@ -85,8 +85,8 @@ public final class SnippetUtils {
     /**
      * Gets all connections that are part of the specified template.
      *
-     * @param contents
-     * @return
+     * @param contents snippet content
+     * @return connection dtos
      */
     private static Collection<ConnectionDTO> getConnections(FlowSnippetDTO contents) {
         final Collection<ConnectionDTO> connections = new HashSet<>();
@@ -100,8 +100,8 @@ public final class SnippetUtils {
      * Gets all components, but not connections, that are part of the specified
      * template.
      *
-     * @param contents
-     * @return
+     * @param contents snippet
+     * @return component dtos
      */
     private static Collection<NiFiComponentDTO> getComponents(FlowSnippetDTO contents) {
         final Collection<NiFiComponentDTO> components = new HashSet<>();
@@ -135,8 +135,8 @@ public final class SnippetUtils {
     /**
      * Builds a mapping of components to PositionDTO's.
      *
-     * @param components
-     * @return
+     * @param components components
+     * @return component and position map
      */
     private static Map<NiFiComponentDTO, PositionDTO> getPositionLookup(Collection<NiFiComponentDTO> components) {
         final Map<NiFiComponentDTO, PositionDTO> positionLookup = new HashMap<>();
@@ -152,8 +152,8 @@ public final class SnippetUtils {
     /**
      * Builds a mapping of components to PositionDTO's.
      *
-     * @param connections
-     * @return
+     * @param connections connections
+     * @return position of connections map
      */
     private static Map<ConnectionDTO, List<PositionDTO>> getConnectionPositionLookup(final Collection<ConnectionDTO> connections) {
         final Map<ConnectionDTO, List<PositionDTO>> positionLookup = new HashMap<>();
@@ -178,9 +178,9 @@ public final class SnippetUtils {
     /**
      * Gets the origin of the bounding box of all specified component positions
      *
-     * @param componentPositions
-     * @param connectionPositions
-     * @return
+     * @param componentPositions position list for components
+     * @param connectionPositions position list for connections
+     * @return position
      */
     private static PositionDTO getOrigin(Collection<PositionDTO> componentPositions, Collection<List<PositionDTO>> connectionPositions) {
         Double x = null;
@@ -222,8 +222,8 @@ public final class SnippetUtils {
     /**
      * Applies the updated positions to the corresponding components.
      *
-     * @param componentPositionLookup
-     * @param connectionPositionLookup
+     * @param componentPositionLookup lookup
+     * @param connectionPositionLookup lookup
      */
     private static void applyUpdatedPositions(final Map<NiFiComponentDTO, PositionDTO> componentPositionLookup, final Map<ConnectionDTO, List<PositionDTO>> connectionPositionLookup) {
         for (final Map.Entry<NiFiComponentDTO, PositionDTO> entry : componentPositionLookup.entrySet()) {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/resources/FlowConfiguration.xsd
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/resources/FlowConfiguration.xsd b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/resources/FlowConfiguration.xsd
index 00c71ac..1809554 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/resources/FlowConfiguration.xsd
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/resources/FlowConfiguration.xsd
@@ -333,42 +333,42 @@
     </xs:simpleType>
     
     <xs:complexType name="ControllerServicesType">
-    	<xs:sequence>
-    		<xs:element name="controllerService" type="ControllerServiceType" minOccurs="0" maxOccurs="unbounded" />
-    	</xs:sequence>
+        <xs:sequence>
+            <xs:element name="controllerService" type="ControllerServiceType" minOccurs="0" maxOccurs="unbounded" />
+        </xs:sequence>
     </xs:complexType>
     
     <xs:complexType name="ControllerServiceType">
-    	<xs:sequence>
-    		<xs:element name="id" type="NonEmptyStringType" />
-    		<xs:element name="name" type="NonEmptyStringType" />
-    		<xs:element name="comment" type="xs:string" />
-    		<xs:element name="class" type="NonEmptyStringType" />
-    		<xs:element name="enabled" type="xs:boolean" />
+        <xs:sequence>
+            <xs:element name="id" type="NonEmptyStringType" />
+            <xs:element name="name" type="NonEmptyStringType" />
+            <xs:element name="comment" type="xs:string" />
+            <xs:element name="class" type="NonEmptyStringType" />
+            <xs:element name="enabled" type="xs:boolean" />
     		
             <xs:element name="property" type="PropertyType" minOccurs="0" maxOccurs="unbounded"/>
             <xs:element name="annotationData" type="xs:string" minOccurs="0" maxOccurs="1" />
-    	</xs:sequence>
+        </xs:sequence>
     </xs:complexType>
     
     <xs:complexType name="ReportingTasksType">
-    	<xs:sequence>
-    		<xs:element name="reportingTask" type="ReportingTaskType" minOccurs="0" maxOccurs="unbounded" />
-    	</xs:sequence>
+        <xs:sequence>
+            <xs:element name="reportingTask" type="ReportingTaskType" minOccurs="0" maxOccurs="unbounded" />
+        </xs:sequence>
     </xs:complexType>
     
     <xs:complexType name="ReportingTaskType">
-    	<xs:sequence>
-    		<xs:element name="id" type="NonEmptyStringType" />
-    		<xs:element name="name" type="NonEmptyStringType" />
-    		<xs:element name="comment" type="xs:string" />
-    		<xs:element name="class" type="NonEmptyStringType" />
+        <xs:sequence>
+            <xs:element name="id" type="NonEmptyStringType" />
+            <xs:element name="name" type="NonEmptyStringType" />
+            <xs:element name="comment" type="xs:string" />
+            <xs:element name="class" type="NonEmptyStringType" />
             <xs:element name="schedulingPeriod" type="NonEmptyStringType"/>
             <xs:element name="schedulingState" type="ScheduledState" />
             <xs:element name="schedulingStrategy" type="SchedulingStrategy" />
     		
             <xs:element name="property" type="PropertyType" minOccurs="0" maxOccurs="unbounded"/>
             <xs:element name="annotationData" type="xs:string" minOccurs="0" maxOccurs="1" />
-    	</xs:sequence>
+        </xs:sequence>
     </xs:complexType>
 </xs:schema>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/cluster/HeartbeatPayloadTest.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/cluster/HeartbeatPayloadTest.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/cluster/HeartbeatPayloadTest.java
index dc3a143..9205b7c 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/cluster/HeartbeatPayloadTest.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/cluster/HeartbeatPayloadTest.java
@@ -16,7 +16,6 @@
  */
 package org.apache.nifi.cluster;
 
-import org.apache.nifi.cluster.HeartbeatPayload;
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.util.ArrayList;
@@ -25,7 +24,8 @@ import org.apache.nifi.controller.Counter;
 import org.apache.nifi.controller.StandardCounter;
 import org.apache.nifi.diagnostics.SystemDiagnostics;
 import org.apache.nifi.util.NiFiProperties;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
 import org.junit.Before;
 import org.junit.BeforeClass;
 import org.junit.Test;


[11/11] incubator-nifi git commit: NIFI-271 checkpoint

Posted by jo...@apache.org.
NIFI-271 checkpoint


Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/888254b2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/888254b2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/888254b2

Branch: refs/heads/NIFI-271
Commit: 888254b2a18174af29d1bd70bf2ce420f41739ba
Parents: b612b6b
Author: joewitt <jo...@apache.org>
Authored: Wed Apr 22 11:46:26 2015 -0400
Committer: joewitt <jo...@apache.org>
Committed: Wed Apr 22 11:46:26 2015 -0400

----------------------------------------------------------------------
 .../nifi-framework/nifi-administration/pom.xml  |   8 +
 .../org/apache/nifi/admin/RepositoryUtils.java  |   7 +-
 .../nifi/admin/UserDataSourceFactoryBean.java   |  12 -
 .../org/apache/nifi/admin/dao/ActionDAO.java    |  28 +-
 .../org/apache/nifi/admin/dao/AuthorityDAO.java |  19 +-
 .../java/org/apache/nifi/admin/dao/UserDAO.java |  52 +-
 .../nifi/admin/dao/impl/StandardActionDAO.java  |  93 +---
 .../apache/nifi/admin/service/AuditService.java |  28 +-
 .../apache/nifi/admin/service/UserService.java  |  70 ++-
 .../service/action/AbstractUserAction.java      |  18 +-
 .../service/action/AdministrationAction.java    |   8 +-
 .../service/action/AuthorizeUserAction.java     |   6 +-
 .../admin/service/action/DeleteUserAction.java  |   2 +-
 .../service/action/FindUserByIdAction.java      |   5 +-
 .../service/action/SeedUserAccountsAction.java  |   4 +-
 .../service/impl/StandardAuditService.java      |  11 -
 .../admin/service/impl/StandardUserService.java |  29 +-
 .../admin/service/transaction/Transaction.java  |   6 +-
 .../AuthorityProviderFactoryBean.java           |  47 +-
 .../org/apache/nifi/user/AccountStatus.java     |   4 +-
 .../java/org/apache/nifi/user/NiFiUser.java     |   2 +-
 .../service/action/AuthorizeUserActionTest.java |  22 +-
 .../service/action/CreateUserActionTest.java    |  14 +-
 .../service/action/DisableUserActionTest.java   |  11 +-
 .../action/InvalidateUserAccountActionTest.java |   9 +-
 .../action/RequestUserAccountActionTest.java    |   6 +-
 .../action/SeedUserAccountsActionTest.java      |   3 +-
 .../action/SetUserAuthoritiesActionTest.java    |   6 +-
 .../protocol/ClusterManagerProtocolSender.java  |  22 +-
 .../cluster/protocol/ConnectionRequest.java     |   6 +-
 .../cluster/protocol/ConnectionResponse.java    |  54 +-
 .../apache/nifi/cluster/protocol/Heartbeat.java |  19 +-
 .../nifi/cluster/protocol/NodeBulletins.java    |   2 +-
 .../nifi/cluster/protocol/NodeIdentifier.java   | 102 ++--
 .../cluster/protocol/NodeProtocolSender.java    |  43 +-
 .../nifi/cluster/protocol/ProtocolContext.java  |  12 +-
 .../cluster/protocol/ProtocolException.java     |   9 +-
 .../nifi/cluster/protocol/ProtocolHandler.java  |  17 +-
 .../nifi/cluster/protocol/ProtocolListener.java |  31 +-
 .../protocol/ProtocolMessageMarshaller.java     |   7 +-
 .../protocol/ProtocolMessageUnmarshaller.java   |  13 +-
 .../nifi/cluster/protocol/StandardDataFlow.java |  34 +-
 .../UnknownServiceAddressException.java         |   9 +-
 .../impl/ClusterManagerProtocolSenderImpl.java  | 101 ++--
 .../ClusterManagerProtocolSenderListener.java   |  28 +-
 .../protocol/impl/ClusterServiceDiscovery.java  |   5 +-
 .../protocol/impl/ClusterServiceLocator.java    | 124 ++---
 .../impl/ClusterServicesBroadcaster.java        |  86 ++--
 .../protocol/impl/CopyingInputStream.java       |  25 +-
 .../impl/MulticastProtocolListener.java         |  66 +--
 .../protocol/impl/NodeProtocolSenderImpl.java   |  61 ++-
 .../impl/NodeProtocolSenderListener.java        |  16 +-
 .../protocol/impl/SocketProtocolListener.java   |  52 +-
 .../protocol/jaxb/JaxbProtocolContext.java      |  21 +-
 .../jaxb/message/AdaptedConnectionRequest.java  |   7 +-
 .../jaxb/message/AdaptedConnectionResponse.java |  19 +-
 .../protocol/jaxb/message/AdaptedCounter.java   |  11 +-
 .../protocol/jaxb/message/AdaptedDataFlow.java  |   9 +-
 .../protocol/jaxb/message/AdaptedHeartbeat.java |  13 +-
 .../jaxb/message/AdaptedNodeBulletins.java      |  11 +-
 .../jaxb/message/AdaptedNodeIdentifier.java     |  13 +-
 .../jaxb/message/ConnectionRequestAdapter.java  |   4 +-
 .../jaxb/message/ConnectionResponseAdapter.java |  12 +-
 .../protocol/jaxb/message/DataFlowAdapter.java  |  10 +-
 .../protocol/jaxb/message/HeartbeatAdapter.java |  14 +-
 .../jaxb/message/JaxbProtocolUtils.java         |   6 +-
 .../jaxb/message/NodeBulletinsAdapter.java      |  10 +-
 .../jaxb/message/NodeIdentifierAdapter.java     |   6 +-
 .../protocol/jaxb/message/ObjectFactory.java    |  35 +-
 .../message/ConnectionRequestMessage.java       |  11 +-
 .../message/ConnectionResponseMessage.java      |  27 +-
 .../ControllerStartupFailureMessage.java        |   7 +-
 .../protocol/message/DisconnectMessage.java     |   8 +-
 .../protocol/message/ExceptionMessage.java      |   9 +-
 .../protocol/message/FlowRequestMessage.java    |   6 +-
 .../protocol/message/FlowResponseMessage.java   |   4 +-
 .../protocol/message/HeartbeatMessage.java      |   4 +-
 .../message/MulticastProtocolMessage.java       |  17 +-
 .../protocol/message/NodeBulletinsMessage.java  |   4 +-
 .../cluster/protocol/message/PingMessage.java   |  13 +-
 .../message/PrimaryRoleAssignmentMessage.java   |   4 +-
 .../protocol/message/ProtocolMessage.java       |  22 +-
 .../message/ReconnectionFailureMessage.java     |   8 +-
 .../message/ReconnectionRequestMessage.java     |  19 +-
 .../message/ReconnectionResponseMessage.java    |   2 +-
 .../message/ServiceBroadcastMessage.java        |   9 +-
 .../MulticastConfigurationFactoryBean.java      |  12 +-
 .../ServerSocketConfigurationFactoryBean.java   |  13 +-
 .../spring/SocketConfigurationFactoryBean.java  |  16 +-
 .../ClusterManagerProtocolSenderImplTest.java   |  58 +--
 .../impl/ClusterServiceDiscoveryTest.java       |  56 +--
 .../impl/ClusterServiceLocatorTest.java         |  64 +--
 .../impl/ClusterServicesBroadcasterTest.java    |  63 ++-
 .../impl/MulticastProtocolListenerTest.java     |  59 ++-
 .../impl/NodeProtocolSenderImplTest.java        |  83 ++-
 .../testutils/ReflexiveProtocolHandler.java     |   6 +-
 .../nifi-framework-core-api/pom.xml             |   4 +-
 .../apache/nifi/connectable/Connectable.java    |  75 ++-
 .../controller/AbstractConfiguredComponent.java |  13 +-
 .../apache/nifi/controller/AbstractPort.java    |  32 +-
 .../nifi/controller/ConfiguredComponent.java    |   4 +-
 .../nifi/controller/ContentAvailability.java    |  24 +-
 .../nifi/controller/ProcessScheduler.java       |  58 +--
 .../apache/nifi/controller/ProcessorNode.java   |  18 +-
 .../nifi/controller/ReportingTaskNode.java      |  48 +-
 .../nifi/controller/StandardFlowFileQueue.java  |   6 +-
 .../apache/nifi/controller/StandardFunnel.java  |   7 +-
 .../controller/ValidationContextFactory.java    |   4 +-
 ...ControllerServiceAlreadyExistsException.java |   4 -
 ...ControllerServiceInstantiationException.java |  13 -
 .../reporting/ReportingTaskProvider.java        |  90 ++--
 .../repository/FlowFileEventRepository.java     |  15 +-
 .../service/ControllerServiceNode.java          |  47 +-
 .../service/ControllerServiceProvider.java      | 168 ++++---
 .../service/ControllerServiceReference.java     |  17 +-
 .../service/ControllerServiceState.java         |  16 +-
 .../org/apache/nifi/groups/ProcessGroup.java    | 221 ++++----
 .../apache/nifi/groups/RemoteProcessGroup.java  |  56 +--
 .../RemoteProcessGroupPortDescriptor.java       |  42 +-
 .../org/apache/nifi/logging/LogRepository.java  |  18 +-
 .../nifi/nar/NarThreadContextClassLoader.java   |   5 +-
 .../org/apache/nifi/remote/RemoteGroupPort.java |   8 +-
 .../org/apache/nifi/remote/RootGroupPort.java   |  28 +-
 .../nifi/remote/protocol/ServerProtocol.java    |  62 ++-
 .../nifi/connectable/StandardConnection.java    |  15 +-
 .../nifi/controller/FileSystemSwapManager.java  |  49 +-
 .../apache/nifi/controller/FlowController.java  | 373 +++++++-------
 .../nifi/controller/FlowFromDOMFactory.java     |  56 +--
 .../nifi/controller/FlowUnmarshaller.java       |  12 +-
 .../nifi/controller/StandardFlowSerializer.java |  65 ++-
 .../nifi/controller/StandardFlowService.java    |  23 +-
 .../controller/StandardFlowSynchronizer.java    | 210 ++++----
 .../nifi/controller/StandardProcessorNode.java  | 110 ++--
 .../apache/nifi/controller/StandardSnippet.java |  75 +--
 .../org/apache/nifi/controller/Template.java    |   2 +-
 .../apache/nifi/controller/TemplateManager.java |  48 +-
 .../reporting/AbstractReportingTaskNode.java    |  84 ++--
 .../reporting/StandardReportingContext.java     |  12 +-
 .../StandardReportingInitializationContext.java |  12 +-
 .../repository/FileSystemRepository.java        |  35 +-
 .../controller/repository/ProcessContext.java   |  21 +-
 .../repository/ProvenanceEventEnricher.java     |   6 +-
 .../repository/RepositoryPurgeException.java    |  14 -
 .../repository/RingBufferEventRepository.java   |   2 +-
 .../repository/StandardFlowFileRecord.java      |   4 +-
 .../repository/StandardProcessSession.java      | 147 +++---
 .../repository/StandardProvenanceReporter.java  |  15 +-
 .../repository/StandardRepositoryRecord.java    |  28 +-
 .../repository/VolatileContentRepository.java   |   6 +-
 .../repository/VolatileFlowFileRepository.java  |   2 +-
 .../WriteAheadFlowFileRepository.java           |  22 +-
 .../repository/claim/StandardContentClaim.java  |  11 +-
 .../claim/StandardContentClaimManager.java      |  10 -
 .../repository/io/ByteCountingOutputStream.java |   4 +-
 .../io/FlowFileAccessInputStream.java           |   6 +-
 .../scheduling/ConnectableProcessContext.java   |   8 +-
 .../scheduling/EventDrivenSchedulingAgent.java  |  38 +-
 .../scheduling/QuartzSchedulingAgent.java       |   2 +-
 .../controller/scheduling/ScheduleState.java    |   6 +-
 .../scheduling/StandardProcessScheduler.java    | 115 ++---
 .../scheduling/TimerDrivenSchedulingAgent.java  |  52 +-
 .../service/ControllerServiceLoader.java        |  53 +-
 ...dControllerServiceInitializationContext.java |   6 +-
 .../service/StandardControllerServiceNode.java  |  87 ++--
 .../StandardControllerServiceProvider.java      | 304 ++++++-----
 .../StandardControllerServiceReference.java     |   4 +-
 .../history/StandardMetricDescriptor.java       |  23 +-
 .../VolatileComponentStatusRepository.java      | 441 ++++++++--------
 .../tasks/ContinuallyRunConnectableTask.java    |  11 +-
 .../tasks/ContinuallyRunProcessorTask.java      |  16 +-
 .../controller/tasks/ReportingTaskWrapper.java  |   6 +-
 .../apache/nifi/encrypt/StringEncryptor.java    |   2 +-
 .../java/org/apache/nifi/engine/FlowEngine.java |  26 +-
 .../nifi/events/VolatileBulletinRepository.java |   2 +-
 .../nifi/fingerprint/FingerprintFactory.java    |  88 ++--
 .../nifi/groups/StandardProcessGroup.java       |  46 +-
 .../nifi/persistence/FlowConfigurationDAO.java  |   6 +-
 .../nifi/processor/SimpleProcessLogger.java     |   5 -
 .../nifi/processor/StandardProcessContext.java  |   6 +-
 .../nifi/processor/StandardPropertyValue.java   |   6 +-
 .../processor/StandardSchedulingContext.java    |   2 +-
 .../processor/StandardValidationContext.java    |  18 +-
 .../org/apache/nifi/remote/RemoteNiFiUtils.java | 120 +++--
 .../nifi/remote/StandardRemoteProcessGroup.java |  48 +-
 .../org/apache/nifi/services/FlowService.java   |  11 +-
 .../nifi/spring/FlowControllerFactoryBean.java  |   2 +-
 .../spring/StandardFlowServiceFactoryBean.java  |   2 +-
 .../java/org/apache/nifi/util/DomUtils.java     |   6 +-
 .../org/apache/nifi/util/ReflectionUtils.java   | 156 +++---
 .../java/org/apache/nifi/util/SnippetUtils.java |  32 +-
 .../src/main/resources/FlowConfiguration.xsd    |  38 +-
 .../nifi/cluster/HeartbeatPayloadTest.java      |   4 +-
 .../repository/TestStandardProcessSession.java  | 220 ++++----
 .../StandardControllerServiceProviderTest.java  |  46 +-
 .../TestStandardControllerServiceProvider.java  | 104 ++--
 .../controller/service/mock/DummyProcessor.java |  13 +-
 .../nifi/controller/service/mock/ServiceA.java  |  21 +-
 .../service/util/TestControllerService.java     |  58 +--
 .../processor/TestStandardPropertyValue.java    |   4 +-
 .../nifi-framework/nifi-runtime/pom.xml         |   2 +-
 .../java/org/apache/nifi/BootstrapListener.java | 501 +++++++++----------
 .../src/main/java/org/apache/nifi/NiFi.java     |  70 +--
 202 files changed, 3663 insertions(+), 4035 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/pom.xml
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/pom.xml b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/pom.xml
index ebf2ceb..f474aab 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/pom.xml
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/pom.xml
@@ -46,6 +46,14 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-checkstyle-plugin</artifactId>
+                <configuration>
+                    <excludes>**/authorization/generated/*.java,</excludes>
+                </configuration>
+            </plugin>            
+
         </plugins>
     </build>
     <dependencies>

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/RepositoryUtils.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/RepositoryUtils.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/RepositoryUtils.java
index b95388b..f678d5d 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/RepositoryUtils.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/RepositoryUtils.java
@@ -25,7 +25,6 @@ import org.slf4j.Logger;
 /**
  * A utility class for useful methods dealing with the repository
  *
- * @author unattributed
  */
 public class RepositoryUtils {
 
@@ -45,7 +44,7 @@ public class RepositoryUtils {
     /**
      * Closes the given statement quietly - no logging, no exceptions
      *
-     * @param statement
+     * @param statement to close
      */
     public static void closeQuietly(final Statement statement) {
 
@@ -61,7 +60,7 @@ public class RepositoryUtils {
     /**
      * Closes the given result set quietly - no logging, no exceptions
      *
-     * @param resultSet
+     * @param resultSet to close
      */
     public static void closeQuietly(final ResultSet resultSet) {
         if (null != resultSet) {
@@ -76,7 +75,7 @@ public class RepositoryUtils {
     /**
      * Closes the given connection quietly - no logging, no exceptions
      *
-     * @param conn
+     * @param conn to close
      */
     public static void closeQuietly(final Connection conn) {
         if (null != conn) {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/UserDataSourceFactoryBean.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/UserDataSourceFactoryBean.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/UserDataSourceFactoryBean.java
index 1f64f6e..ebcf574 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/UserDataSourceFactoryBean.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/UserDataSourceFactoryBean.java
@@ -30,9 +30,6 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.FactoryBean;
 
-/**
- *
- */
 public class UserDataSourceFactoryBean implements FactoryBean {
 
     private static final Logger logger = LoggerFactory.getLogger(UserDataSourceFactoryBean.class);
@@ -196,12 +193,6 @@ public class UserDataSourceFactoryBean implements FactoryBean {
         return connectionPool;
     }
 
-    /**
-     * Get the database url for the specified database file.
-     *
-     * @param databaseFile
-     * @return
-     */
     private String getDatabaseUrl(File databaseFile) {
         String databaseUrl = "jdbc:h2:" + databaseFile + ";AUTOCOMMIT=OFF;DB_CLOSE_ON_EXIT=FALSE;LOCK_MODE=3";
         String databaseUrlAppend = properties.getProperty(NiFiProperties.H2_URL_APPEND);
@@ -225,9 +216,6 @@ public class UserDataSourceFactoryBean implements FactoryBean {
         this.properties = properties;
     }
 
-    /**
-     * Disposes resources.
-     */
     public void shutdown() {
 
         // shutdown the connection pool

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/ActionDAO.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/ActionDAO.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/ActionDAO.java
index 5d5d498..925dc80 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/ActionDAO.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/ActionDAO.java
@@ -32,43 +32,41 @@ public interface ActionDAO {
     /**
      * Persists the specified action.
      *
-     * @param action
-     * @throws DataAccessException
+     * @param action to persist
+     * @throws DataAccessException if unable to persist
      */
     void createAction(Action action) throws DataAccessException;
 
     /**
      * Finds all actions that meet the specified criteria.
      *
-     * @param actionQuery
-     * @return
-     * @throws DataAccessException
+     * @param actionQuery query for actions
+     * @return History of actions
+     * @throws DataAccessException dae
      */
     History findActions(HistoryQuery actionQuery) throws DataAccessException;
 
     /**
-     * Finds the previous values for the specified property in the specified
-     * component. Returns empty list if there are none.
-     *
-     * @param componentId
-     * @return
+     * @param componentId to get previous values of
+     * @return Finds the previous values for the specified property in the
+     * specified component. Returns empty list if there are none
      */
     Map<String, List<PreviousValue>> getPreviousValues(String componentId);
 
     /**
      * Finds the specified action.
      *
-     * @param actionId
-     * @return
-     * @throws DataAccessException
+     * @param actionId action identifier
+     * @return Action specified
+     * @throws DataAccessException dae
      */
     Action getAction(Integer actionId) throws DataAccessException;
 
     /**
      * Deletes all actions up to the specified end date.
      *
-     * @param endDate
-     * @throws DataAccessException
+     * @param endDate date to stop deleting at
+     * @throws DataAccessException dae
      */
     void deleteActions(Date endDate) throws DataAccessException;
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/AuthorityDAO.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/AuthorityDAO.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/AuthorityDAO.java
index 2992884..b80b78e 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/AuthorityDAO.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/AuthorityDAO.java
@@ -27,32 +27,33 @@ public interface AuthorityDAO {
     /**
      * Finds all Authority for the specified user.
      *
-     * @param userId
-     * @return
+     * @param userId identifier of user
+     * @return authorities
      */
     Set<Authority> findAuthoritiesByUserId(String userId) throws DataAccessException;
 
     /**
-     * Creates a new Authorities for the specified user.
+     * Creates new Authorities for the specified user in addition to authorities
+     * they already have.
      *
-     * @param authorities
-     * @param userId
+     * @param authorities to add to the given user
+     * @param userId identifier of user
      */
     void createAuthorities(Set<Authority> authorities, String userId) throws DataAccessException;
 
     /**
      * Removes all Authorities for the specified user.
      *
-     * @param userId
-     * @throws DataAccessException
+     * @param userId user identifier
+     * @throws DataAccessException if unable to access authorities
      */
     void deleteAuthorities(String userId) throws DataAccessException;
 
     /**
      * Removes the specified Authority.
      *
-     * @param authorities
-     * @param userId
+     * @param authorities to remove
+     * @param userId user id
      */
     void deleteAuthorities(Set<Authority> authorities, String userId) throws DataAccessException;
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/UserDAO.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/UserDAO.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/UserDAO.java
index 9ffab5d..6339e5a 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/UserDAO.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/UserDAO.java
@@ -29,98 +29,98 @@ public interface UserDAO {
     /**
      * Determines whether there are any PENDING user accounts.
      *
-     * @return
-     * @throws DataAccessException
+     * @return true if pending
+     * @throws DataAccessException dae
      */
     Boolean hasPendingUserAccounts() throws DataAccessException;
 
     /**
      * Returns all users.
      *
-     * @return
-     * @throws DataAccessException
+     * @return all users
+     * @throws DataAccessException dae
      */
     Set<NiFiUser> findUsers() throws DataAccessException;
 
     /**
      * Returns all user groups.
      *
-     * @return
-     * @throws DataAccessException
+     * @return all group names
+     * @throws DataAccessException dae
      */
     Set<String> findUserGroups() throws DataAccessException;
 
     /**
      * Returns all users for the specified group.
      *
-     * @param group
-     * @return
-     * @throws DataAccessException
+     * @param group group
+     * @return users in group
+     * @throws DataAccessException dae
      */
     Set<NiFiUser> findUsersForGroup(String group) throws DataAccessException;
 
     /**
      * Returns the user with the specified id.
      *
-     * @param id
-     * @return
-     * @throws DataAccessException
+     * @param id user id
+     * @return user for the given id
+     * @throws DataAccessException dae
      */
     NiFiUser findUserById(String id) throws DataAccessException;
 
     /**
      * Returns the user with the specified DN.
      *
-     * @param dn
-     * @return
+     * @param dn user dn
+     * @return user
      */
     NiFiUser findUserByDn(String dn) throws DataAccessException;
 
     /**
      * Creates a new user based off the specified NiFiUser.
      *
-     * @param user
+     * @param user to create
      */
     void createUser(NiFiUser user) throws DataAccessException;
 
     /**
      * Updates the specified NiFiUser.
      *
-     * @param user
+     * @param user to update
      */
     void updateUser(NiFiUser user) throws DataAccessException;
 
     /**
      * Deletes the specified user.
      *
-     * @param id
-     * @throws DataAccessException
+     * @param id user identifier
+     * @throws DataAccessException dae
      */
     void deleteUser(String id) throws DataAccessException;
 
     /**
      * Sets the status of the specified group.
      *
-     * @param group
-     * @param status
-     * @throws DataAccessException
+     * @param group group
+     * @param status status
+     * @throws DataAccessException dae
      */
     void updateGroupStatus(String group, AccountStatus status) throws DataAccessException;
 
     /**
      * Sets the last verified time for all users in the specified group.
      *
-     * @param group
-     * @param lastVerified
-     * @throws DataAccessException S
+     * @param group group
+     * @param lastVerified date last verified
+     * @throws DataAccessException dae
      */
     void updateGroupVerification(String group, Date lastVerified) throws DataAccessException;
 
     /**
      * Ungroups the specified group.
      *
-     * @param group
-     * @throws DataAccessException
+     * @param group to ungroup
+     * @throws DataAccessException dae
      */
     void ungroup(String group) throws DataAccessException;
 

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/impl/StandardActionDAO.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/impl/StandardActionDAO.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/impl/StandardActionDAO.java
index 34623f4..bb655eb 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/impl/StandardActionDAO.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/dao/impl/StandardActionDAO.java
@@ -259,13 +259,6 @@ public class StandardActionDAO implements ActionDAO {
         }
     }
 
-    /**
-     * Persists the extension details.
-     *
-     * @param actionId
-     * @param extensionDetails
-     * @throws DataAccessException
-     */
     private void createExtensionDetails(int actionId, ExtensionDetails extensionDetails) throws DataAccessException {
         PreparedStatement statement = null;
         try {
@@ -288,13 +281,6 @@ public class StandardActionDAO implements ActionDAO {
         }
     }
 
-    /**
-     * Persists the remote process group details.
-     *
-     * @param actionId
-     * @param remoteProcessGroupDetails
-     * @throws DataAccessException
-     */
     private void createRemoteProcessGroupDetails(int actionId, RemoteProcessGroupDetails remoteProcessGroupDetails) throws DataAccessException {
         PreparedStatement statement = null;
         try {
@@ -317,13 +303,6 @@ public class StandardActionDAO implements ActionDAO {
         }
     }
 
-    /**
-     * Persists the connection details.
-     *
-     * @param actionId
-     * @param connectionDetails
-     * @throws DataAccessException
-     */
     private void createConnectDetails(int actionId, ConnectDetails connectionDetails) throws DataAccessException {
         PreparedStatement statement = null;
         try {
@@ -352,13 +331,6 @@ public class StandardActionDAO implements ActionDAO {
         }
     }
 
-    /**
-     * Persists the move details.
-     *
-     * @param actionId
-     * @param moveDetails
-     * @throws DataAccessException
-     */
     private void createMoveDetails(int actionId, MoveDetails moveDetails) throws DataAccessException {
         PreparedStatement statement = null;
         try {
@@ -384,13 +356,6 @@ public class StandardActionDAO implements ActionDAO {
         }
     }
 
-    /**
-     * Persists the configuration details.
-     *
-     * @param actionId
-     * @param configurationDetails
-     * @throws DataAccessException
-     */
     private void createConfigureDetails(int actionId, ConfigureDetails configurationDetails) throws DataAccessException {
         PreparedStatement statement = null;
         try {
@@ -415,13 +380,6 @@ public class StandardActionDAO implements ActionDAO {
         }
     }
 
-    /**
-     * Persists the purge details.
-     *
-     * @param actionId
-     * @param purgeDetails
-     * @throws DataAccessException
-     */
     private void createPurgeDetails(int actionId, PurgeDetails purgeDetails) throws DataAccessException {
         PreparedStatement statement = null;
         try {
@@ -444,13 +402,6 @@ public class StandardActionDAO implements ActionDAO {
         }
     }
 
-    /**
-     * Finds actions that meet the criteria in the specified query.
-     *
-     * @param historyQuery
-     * @return
-     * @throws DataAccessException
-     */
     @Override
     public History findActions(HistoryQuery historyQuery) throws DataAccessException {
 
@@ -601,7 +552,7 @@ public class StandardActionDAO implements ActionDAO {
 
                 // get the component details if appropriate
                 ComponentDetails componentDetails = null;
-                if (Component.Processor.equals(component) || Component.ControllerService.equals(component)  || Component.ReportingTask.equals(component)) {
+                if (Component.Processor.equals(component) || Component.ControllerService.equals(component) || Component.ReportingTask.equals(component)) {
                     componentDetails = getExtensionDetails(actionId);
                 } else if (Component.RemoteProcessGroup.equals(component)) {
                     componentDetails = getRemoteProcessGroupDetails(actionId);
@@ -712,13 +663,6 @@ public class StandardActionDAO implements ActionDAO {
         return action;
     }
 
-    /**
-     * Loads the specified extension details.
-     *
-     * @param actionId
-     * @return
-     * @throws DataAccessException
-     */
     private ExtensionDetails getExtensionDetails(Integer actionId) throws DataAccessException {
         ExtensionDetails extensionDetails = null;
         PreparedStatement statement = null;
@@ -746,13 +690,6 @@ public class StandardActionDAO implements ActionDAO {
         return extensionDetails;
     }
 
-    /**
-     * Loads the specified remote process group details.
-     *
-     * @param actionId
-     * @return
-     * @throws DataAccessException
-     */
     private RemoteProcessGroupDetails getRemoteProcessGroupDetails(Integer actionId) throws DataAccessException {
         RemoteProcessGroupDetails remoteProcessGroupDetails = null;
         PreparedStatement statement = null;
@@ -780,13 +717,6 @@ public class StandardActionDAO implements ActionDAO {
         return remoteProcessGroupDetails;
     }
 
-    /**
-     * Loads the specified move details.
-     *
-     * @param actionId
-     * @return
-     * @throws DataAccessException
-     */
     private MoveDetails getMoveDetails(Integer actionId) throws DataAccessException {
         MoveDetails moveDetails = null;
         PreparedStatement statement = null;
@@ -817,13 +747,6 @@ public class StandardActionDAO implements ActionDAO {
         return moveDetails;
     }
 
-    /**
-     * Loads the specified relationship details.
-     *
-     * @param actionId
-     * @return
-     * @throws DataAccessException
-     */
     private ConnectDetails getConnectDetails(Integer actionId) throws DataAccessException {
         ConnectDetails connectionDetails = null;
         PreparedStatement statement = null;
@@ -860,13 +783,6 @@ public class StandardActionDAO implements ActionDAO {
         return connectionDetails;
     }
 
-    /**
-     * Loads the specified configuration details.
-     *
-     * @param actionId
-     * @return
-     * @throws DataAccessException
-     */
     private ConfigureDetails getConfigureDetails(Integer actionId) throws DataAccessException {
         ConfigureDetails configurationDetails = null;
         PreparedStatement statement = null;
@@ -896,13 +812,6 @@ public class StandardActionDAO implements ActionDAO {
         return configurationDetails;
     }
 
-    /**
-     * Loads the specified purge details.
-     *
-     * @param actionId
-     * @return
-     * @throws DataAccessException
-     */
     private PurgeDetails getPurgeDetails(Integer actionId) throws DataAccessException {
         PurgeDetails purgeDetails = null;
         PreparedStatement statement = null;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/AuditService.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/AuditService.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/AuditService.java
index 7ca4e06..680173f 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/AuditService.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/AuditService.java
@@ -33,26 +33,24 @@ public interface AuditService {
     /**
      * Adds the specified actions.
      *
-     * @param actions
-     * @throws AdministrationException
+     * @param actions to add
+     * @throws AdministrationException if failed to add
      */
     void addActions(Collection<Action> actions);
 
     /**
-     * Finds the previous values for the specified property in the specified
-     * component. Returns null if there are none.
-     *
-     * @param componentId
-     * @return
+     * @param componentId identifier of the component
+     * @return Finds the previous values for the specified property in the
+     * specified component. Returns null if there are none
      */
     Map<String, List<PreviousValue>> getPreviousValues(String componentId);
 
     /**
      * Get the actions within the given date range.
      *
-     * @param actionQuery
-     * @return
-     * @throws AdministrationException
+     * @param actionQuery query
+     * @return history of actions
+     * @throws AdministrationException ae
      */
     History getActions(HistoryQuery actionQuery);
 
@@ -60,17 +58,17 @@ public interface AuditService {
      * Get the details for the specified action id. If the action cannot be
      * found, null is returned.
      *
-     * @param actionId
-     * @return
+     * @param actionId identifier of action
+     * @return the action
      */
     Action getAction(Integer actionId);
 
     /**
      * Purges all action's that occurred before the specified end date.
      *
-     * @param end
-     * @param purgeAction
-     * @throws AdministrationException
+     * @param end the stopper for event purging
+     * @param purgeAction the action
+     * @throws AdministrationException ae
      */
     void purgeActions(Date end, Action purgeAction);
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/UserService.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/UserService.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/UserService.java
index 86256fd..b02f192 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/UserService.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/UserService.java
@@ -33,129 +33,125 @@ public interface UserService {
     /**
      * Creates a new user account using the specified dn and justification.
      *
-     * @param dn
-     * @param justification
-     * @return
+     * @param dn user dn
+     * @param justification why the account is necessary
+     * @return the created NiFiUser
      */
     NiFiUser createPendingUserAccount(String dn, String justification);
 
     /**
-     * Determines if there are any PENDING user accounts present.
-     *
-     * @return
+     * @return Determines if there are any PENDING user accounts present
      */
     Boolean hasPendingUserAccount();
 
     /**
-     * Determines if the users in the dnChain are authorized to download content 
-     * with the specified attributes.
-     * 
-     * @param dnChain
-     * @param attributes
-     * @return 
+     * @param dnChain user dn chain
+     * @param attributes attributes for authorization request
+     * @return Determines if the users in the dnChain are authorized to download
+     * content with the specified attributes
      */
     DownloadAuthorization authorizeDownload(List<String> dnChain, Map<String, String> attributes);
-    
+
     /**
      * Updates a user group using the specified group comprised of the specified
      * users. Returns all the users that are currently in the specified group.
      *
-     * @param group
-     * @param userIds
-     * @param authorities
-     * @return
+     * @param group group
+     * @param userIds users
+     * @param authorities auths
+     * @return a user group
      */
     NiFiUserGroup updateGroup(String group, Set<String> userIds, Set<Authority> authorities);
 
     /**
      * Authorizes the user specified.
      *
-     * @param dn
-     * @return
+     * @param dn user dn
+     * @return the user for the given dn if found
      */
     NiFiUser checkAuthorization(String dn);
 
     /**
      * Deletes the user with the specified id.
      *
-     * @param id
+     * @param id user identifier
      */
     void deleteUser(String id);
 
     /**
      * Disables the specified users account.
      *
-     * @param id
-     * @return
+     * @param id user identifier
+     * @return user for the given identifier
      */
     NiFiUser disable(String id);
 
     /**
      * Disables the specified user group.
      *
-     * @param group
-     * @return
+     * @param group to disable
+     * @return user group
      */
     NiFiUserGroup disableGroup(String group);
 
     /**
      * Updates the specified user with the specified authorities.
      *
-     * @param id
-     * @param authorities
-     * @return
+     * @param id identifier of user
+     * @param authorities auths to set
+     * @return the updated user
      */
     NiFiUser update(String id, Set<Authority> authorities);
 
     /**
      * Invalidates the specified user account.
      *
-     * @param id
+     * @param id identifier of user account to invalidate
      */
     void invalidateUserAccount(String id);
 
     /**
      * Invalidates the user accounts associated with the specified user group.
      *
-     * @param group
+     * @param group to invalidate user accounts on
      */
     void invalidateUserGroupAccount(String group);
 
     /**
      * Ungroups the specified group.
      *
-     * @param group
+     * @param group to split up
      */
     void ungroup(String group);
 
     /**
      * Ungroups the specified user.
      *
-     * @param id
+     * @param id user to ungroup
      */
     void ungroupUser(String id);
 
     /**
      * Returns a collection of all NiFiUsers.
      *
-     * @return
+     * @return Collection of users
      */
     Collection<NiFiUser> getUsers();
 
     /**
      * Finds the specified user by id.
      *
-     * @param id
-     * @return
+     * @param id of the user
+     * @return the user object
      */
     NiFiUser getUserById(String id);
 
     /**
      * Finds the specified user by dn.
      *
-     * @param dn
-     * @return
-     * @throws AdministrationException
+     * @param dn the user dn
+     * @return the newly created user
+     * @throws AdministrationException ae
      */
     NiFiUser getUserByDn(String dn);
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/AbstractUserAction.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/AbstractUserAction.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/AbstractUserAction.java
index 41c97fe..b970dc1 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/AbstractUserAction.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/AbstractUserAction.java
@@ -26,16 +26,16 @@ import org.apache.nifi.user.NiFiUser;
 
 /**
  *
- * @param <T>
+ * @param <T> type of user action
  */
 public abstract class AbstractUserAction<T> implements AdministrationAction<T> {
 
     /**
      * Determines the authorities that need to be added to the specified user.
      *
-     * @param user
-     * @param authorities
-     * @return
+     * @param user user
+     * @param authorities auths
+     * @return authorities to add
      */
     protected Set<Authority> determineAuthoritiesToAdd(NiFiUser user, Set<Authority> authorities) {
         // not using copyOf since authorities may be empty and copyOf can throw an IllegalArgumentException when empty
@@ -53,9 +53,9 @@ public abstract class AbstractUserAction<T> implements AdministrationAction<T> {
      * Determines the authorities that need to be removed from the specified
      * user.
      *
-     * @param user
-     * @param authorities
-     * @return
+     * @param user user
+     * @param authorities auths
+     * @return auths to remove
      */
     protected Set<Authority> determineAuthoritiesToRemove(NiFiUser user, Set<Authority> authorities) {
         Set<Authority> authoritiesToRemove = EnumSet.copyOf(user.getAuthorities());
@@ -71,8 +71,8 @@ public abstract class AbstractUserAction<T> implements AdministrationAction<T> {
      * Verifies the specified users account. Includes obtaining the authorities
      * and group according to the specified authority provider.
      *
-     * @param authorityProvider
-     * @param user
+     * @param authorityProvider provider
+     * @param user user to verify
      */
     protected void verifyAccount(AuthorityProvider authorityProvider, NiFiUser user) {
         // load the roles for the user

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/AdministrationAction.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/AdministrationAction.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/AdministrationAction.java
index 5818ebe..f1795a9 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/AdministrationAction.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/AdministrationAction.java
@@ -23,16 +23,16 @@ import org.apache.nifi.authorization.AuthorityProvider;
  * Defines the administration action. Actions are provided a DAO factory and
  * authority provider to perform a require action.
  *
- * @param <T>
+ * @param <T> type
  */
 public interface AdministrationAction<T> {
 
     /**
      * Performs an action using the specified DAOFactory and AuthorityProvider.
      *
-     * @param daoFactory
-     * @param authorityProvider
-     * @return
+     * @param daoFactory factory
+     * @param authorityProvider provider
+     * @return action result
      */
     T execute(DAOFactory daoFactory, AuthorityProvider authorityProvider);
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/AuthorizeUserAction.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/AuthorizeUserAction.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/AuthorizeUserAction.java
index ea6973d..fe32772 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/AuthorizeUserAction.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/AuthorizeUserAction.java
@@ -142,9 +142,7 @@ public class AuthorizeUserAction extends AbstractUserAction<NiFiUser> {
     }
 
     /**
-     * Determines if account verification is required.
-     *
-     * @return
+     * @return Determines if account verification is required
      */
     private boolean isAccountVerificationRequired(NiFiUser user) {
         // accounts that have never been verified obviously needs to be re-verified
@@ -163,7 +161,7 @@ public class AuthorizeUserAction extends AbstractUserAction<NiFiUser> {
     /**
      * Checks the account status of the specified user.
      *
-     * @param user
+     * @param user to check
      */
     private void checkAccountStatus(NiFiUser user) {
         if (AccountStatus.DISABLED.equals(user.getStatus())) {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/DeleteUserAction.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/DeleteUserAction.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/DeleteUserAction.java
index f93e97e..0d59b43 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/DeleteUserAction.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/DeleteUserAction.java
@@ -35,7 +35,7 @@ public class DeleteUserAction implements AdministrationAction<Void> {
     /**
      * Creates a new transactions for deleting the specified user.
      *
-     * @param userId
+     * @param userId user identifier
      */
     public DeleteUserAction(String userId) {
         this.userId = userId;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/FindUserByIdAction.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/FindUserByIdAction.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/FindUserByIdAction.java
index 3062a2e..0a10841 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/FindUserByIdAction.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/FindUserByIdAction.java
@@ -22,9 +22,6 @@ import org.apache.nifi.admin.dao.UserDAO;
 import org.apache.nifi.authorization.AuthorityProvider;
 import org.apache.nifi.user.NiFiUser;
 
-/**
- *
- */
 public class FindUserByIdAction implements AdministrationAction<NiFiUser> {
 
     private final String id;
@@ -32,7 +29,7 @@ public class FindUserByIdAction implements AdministrationAction<NiFiUser> {
     /**
      * Creates a new transactions for getting a user with the specified id.
      *
-     * @param id
+     * @param id of user
      */
     public FindUserByIdAction(String id) {
         this.id = id;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/SeedUserAccountsAction.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/SeedUserAccountsAction.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/SeedUserAccountsAction.java
index 72d68db..6665ac0 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/SeedUserAccountsAction.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/action/SeedUserAccountsAction.java
@@ -102,7 +102,7 @@ public class SeedUserAccountsAction extends AbstractUserAction<Void> {
                     CreateUserAction createUser = new CreateUserAction(user);
                     createUser.execute(daoFactory, authorityProvider);
                 } else {
-                    // this is not a new user and we have just verified their 
+                    // this is not a new user and we have just verified their
                     // account, do not revoke...
                     accountsToRevoke.remove(user);
 
@@ -144,7 +144,7 @@ public class SeedUserAccountsAction extends AbstractUserAction<Void> {
             try {
                 logger.info(String.format("User not authorized with configured provider: %s. Disabling account...", user.getDn()));
 
-                // disable the account and reset its last verified timestamp since it was not found 
+                // disable the account and reset its last verified timestamp since it was not found
                 // in the current configured authority provider
                 user.setStatus(AccountStatus.DISABLED);
                 user.setLastVerified(null);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/impl/StandardAuditService.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/impl/StandardAuditService.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/impl/StandardAuditService.java
index 721e6b2..e588841 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/impl/StandardAuditService.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/impl/StandardAuditService.java
@@ -197,22 +197,12 @@ public class StandardAuditService implements AuditService {
         }
     }
 
-    /**
-     * Rolls back the specified transaction.
-     *
-     * @param transaction
-     */
     private void rollback(Transaction transaction) {
         if (transaction != null) {
             transaction.rollback();
         }
     }
 
-    /**
-     * Closes the specified transaction.
-     *
-     * @param transaction
-     */
     private void closeQuietly(final Transaction transaction) {
         if (transaction != null) {
             try {
@@ -222,7 +212,6 @@ public class StandardAuditService implements AuditService {
         }
     }
 
-    /* setters */
     public void setTransactionBuilder(TransactionBuilder transactionBuilder) {
         this.transactionBuilder = transactionBuilder;
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/impl/StandardUserService.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/impl/StandardUserService.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/impl/StandardUserService.java
index 5c9af4b..424816f 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/impl/StandardUserService.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/impl/StandardUserService.java
@@ -77,7 +77,7 @@ public class StandardUserService implements UserService {
      * Seed any users from the authority provider that are not already present.
      */
     public void seedUserAccounts() {
-        // do not seed node's user cache. when/if the node disconnects its 
+        // do not seed node's user cache. when/if the node disconnects its
         // cache will be populated lazily (as needed)
         if (properties.isNode()) {
             return;
@@ -143,7 +143,7 @@ public class StandardUserService implements UserService {
 
         writeLock.lock();
         try {
-            // if user ids have been specified, invalidate the user accounts before performing 
+            // if user ids have been specified, invalidate the user accounts before performing
             // the desired updates. if case of an error, this will ensure that these users are
             // authorized the next time the access the application
             if (userIds != null) {
@@ -409,7 +409,7 @@ public class StandardUserService implements UserService {
      * modifying a user account. This method should only be invoked from within
      * a write lock.
      *
-     * @param id
+     * @param id user account identifier
      */
     @Override
     public void invalidateUserAccount(String id) {
@@ -438,14 +438,6 @@ public class StandardUserService implements UserService {
         }
     }
 
-    /**
-     * Invalidates the user with the specified id. This is done to ensure a user
-     * account will need to be re-validated in case an error occurs while
-     * modifying a user account. This method should only be invoked from within
-     * a write lock.
-     *
-     * @param group
-     */
     @Override
     public void invalidateUserGroupAccount(String group) {
         Transaction transaction = null;
@@ -533,7 +525,7 @@ public class StandardUserService implements UserService {
             readLock.unlock();
         }
     }
-    
+
     @Override
     public Collection<NiFiUser> getUsers() {
         Transaction transaction = null;
@@ -624,22 +616,12 @@ public class StandardUserService implements UserService {
         }
     }
 
-    /**
-     * Rolls back the specified transaction.
-     *
-     * @param transaction
-     */
     private void rollback(final Transaction transaction) {
         if (transaction != null) {
             transaction.rollback();
         }
     }
 
-    /**
-     * Closes the specified transaction.
-     *
-     * @param transaction
-     */
     private void closeQuietly(final Transaction transaction) {
         if (transaction != null) {
             try {
@@ -649,9 +631,6 @@ public class StandardUserService implements UserService {
         }
     }
 
-    /*
-     * setters
-     */
     public void setTransactionBuilder(TransactionBuilder transactionBuilder) {
         this.transactionBuilder = transactionBuilder;
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/transaction/Transaction.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/transaction/Transaction.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/transaction/Transaction.java
index edd214b..4792581 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/transaction/Transaction.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/admin/service/transaction/Transaction.java
@@ -27,9 +27,9 @@ public interface Transaction extends Closeable {
     /**
      * Executes the specified action within the current transaction.
      *
-     * @param <T>
-     * @param action
-     * @return
+     * @param <T> type of action to execute
+     * @param action action to execute
+     * @return executed action
      * @throws IllegalStateException - if there is no current transaction
      */
     <T> T execute(AdministrationAction<T> action);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/authorization/AuthorityProviderFactoryBean.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/authorization/AuthorityProviderFactoryBean.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/authorization/AuthorityProviderFactoryBean.java
index 31a01be..b3e9547 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/authorization/AuthorityProviderFactoryBean.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/authorization/AuthorityProviderFactoryBean.java
@@ -130,12 +130,6 @@ public class AuthorityProviderFactoryBean implements FactoryBean, ApplicationCon
         return authorityProvider;
     }
 
-    /**
-     * Loads the authority providers configuration.
-     *
-     * @return
-     * @throws Exception
-     */
     private AuthorityProviders loadAuthorityProvidersConfiguration() throws Exception {
         final File authorityProvidersConfigurationFile = properties.getAuthorityProviderConfiguraitonFile();
 
@@ -159,14 +153,6 @@ public class AuthorityProviderFactoryBean implements FactoryBean, ApplicationCon
         }
     }
 
-    /**
-     * Creates the AuthorityProvider instance for the identifier specified.
-     *
-     * @param identifier
-     * @param authorityProviderClassName
-     * @return
-     * @throws Exception
-     */
     private AuthorityProvider createAuthorityProvider(final String identifier, final String authorityProviderClassName) throws Exception {
         // get the classloader for the specified authority provider
         final ClassLoader authorityProviderClassLoader = ExtensionManager.getClassLoader(authorityProviderClassName);
@@ -207,12 +193,6 @@ public class AuthorityProviderFactoryBean implements FactoryBean, ApplicationCon
         return withNarLoader(instance);
     }
 
-    /**
-     * Loads the AuthorityProvider configuration.
-     *
-     * @param provider
-     * @return
-     */
     private AuthorityProviderConfigurationContext loadAuthorityProviderConfiguration(final Provider provider) {
         final Map<String, String> providerProperties = new HashMap<>();
 
@@ -223,15 +203,6 @@ public class AuthorityProviderFactoryBean implements FactoryBean, ApplicationCon
         return new StandardAuthorityProviderConfigurationContext(provider.getIdentifier(), providerProperties);
     }
 
-    /**
-     * Performs method injection.
-     *
-     * @param instance
-     * @param authorityProviderClass
-     * @throws IllegalAccessException
-     * @throws IllegalArgumentException
-     * @throws InvocationTargetException
-     */
     private void performMethodInjection(final AuthorityProvider instance, final Class authorityProviderClass) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
         for (final Method method : authorityProviderClass.getMethods()) {
             if (method.isAnnotationPresent(AuthorityProviderContext.class)) {
@@ -267,14 +238,6 @@ public class AuthorityProviderFactoryBean implements FactoryBean, ApplicationCon
         }
     }
 
-    /**
-     * Performs field injection.
-     *
-     * @param instance
-     * @param authorityProviderClass
-     * @throws IllegalArgumentException
-     * @throws IllegalAccessException
-     */
     private void performFieldInjection(final AuthorityProvider instance, final Class authorityProviderClass) throws IllegalArgumentException, IllegalAccessException {
         for (final Field field : authorityProviderClass.getDeclaredFields()) {
             if (field.isAnnotationPresent(AuthorityProviderContext.class)) {
@@ -311,10 +274,8 @@ public class AuthorityProviderFactoryBean implements FactoryBean, ApplicationCon
     }
 
     /**
-     * Creates a default provider to use when running unsecurely with no
-     * provider configured.
-     *
-     * @return
+     * @return a default provider to use when running unsecurely with no
+     * provider configured
      */
     private AuthorityProvider createDefaultProvider() {
         return new AuthorityProvider() {
@@ -389,8 +350,8 @@ public class AuthorityProviderFactoryBean implements FactoryBean, ApplicationCon
      * Decorates the base provider to ensure the nar context classloader is used
      * when invoking the underlying methods.
      *
-     * @param baseProvider
-     * @return
+     * @param baseProvider base provider
+     * @return provider
      */
     public AuthorityProvider withNarLoader(final AuthorityProvider baseProvider) {
         return new AuthorityProvider() {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/user/AccountStatus.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/user/AccountStatus.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/user/AccountStatus.java
index 195f6bf..d7becf1 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/user/AccountStatus.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/user/AccountStatus.java
@@ -29,8 +29,8 @@ public enum AccountStatus {
      * Returns the matching status or null if the specified status does not
      * match any statuses.
      *
-     * @param rawStatus
-     * @return
+     * @param rawStatus string form of status
+     * @return account status object
      */
     public static AccountStatus valueOfStatus(String rawStatus) {
         AccountStatus desiredStatus = null;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/user/NiFiUser.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/user/NiFiUser.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/user/NiFiUser.java
index 415160a..a47bde9 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/user/NiFiUser.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/main/java/org/apache/nifi/user/NiFiUser.java
@@ -43,7 +43,7 @@ public class NiFiUser implements Serializable {
 
     private AccountStatus status;
     private EnumSet<Authority> authorities;
-    
+
     private NiFiUser chain;
 
     /* getters / setters */

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/AuthorizeUserActionTest.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/AuthorizeUserActionTest.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/AuthorizeUserActionTest.java
index 5797705..28ea4a9 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/AuthorizeUserActionTest.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/AuthorizeUserActionTest.java
@@ -268,7 +268,7 @@ public class AuthorizeUserActionTest {
     /**
      * Tests AuthorityAccessException in doesDnExist.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test(expected = AdministrationException.class)
     public void testAuthorityAccessExceptionInDoesDnExist() throws Exception {
@@ -279,7 +279,7 @@ public class AuthorizeUserActionTest {
     /**
      * Test unknown user in the authority provider.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test(expected = AccountNotFoundException.class)
     public void testUnknownUser() throws Exception {
@@ -290,7 +290,7 @@ public class AuthorizeUserActionTest {
     /**
      * Test a user thats been removed after checking their existence.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test(expected = AccountNotFoundException.class)
     public void testUserRemovedAfterCheckingExistence() throws Exception {
@@ -301,7 +301,7 @@ public class AuthorizeUserActionTest {
     /**
      * Testing AuthorityAccessException when getting authorities.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test(expected = AdministrationException.class)
     public void testAuthorityAccessException() throws Exception {
@@ -312,7 +312,7 @@ public class AuthorizeUserActionTest {
     /**
      * Testing DataAccessException while creating user accounts.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test(expected = DataAccessException.class)
     public void testErrorCreatingUserAccount() throws Exception {
@@ -323,7 +323,7 @@ public class AuthorizeUserActionTest {
     /**
      * Tests the general case when a user account is created.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test
     public void testAccountCreation() throws Exception {
@@ -343,7 +343,7 @@ public class AuthorizeUserActionTest {
      * Tests the general case when there is an existing user account that
      * requires verification.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test
     public void testExistingUserRequiresVerification() throws Exception {
@@ -364,7 +364,7 @@ public class AuthorizeUserActionTest {
      * Tests the general case when there is an existing user account that does
      * not require verification.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test
     public void testExistingUserNoVerification() throws Exception {
@@ -386,7 +386,7 @@ public class AuthorizeUserActionTest {
     /**
      * Tests existing users whose accounts are in a pending status.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test(expected = AccountPendingException.class)
     public void testExistingPendingUser() throws Exception {
@@ -398,7 +398,7 @@ public class AuthorizeUserActionTest {
     /**
      * Tests existing users whose accounts are in a disabled status.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test(expected = AccountDisabledException.class)
     public void testExistingDisabledUser() throws Exception {
@@ -411,7 +411,7 @@ public class AuthorizeUserActionTest {
      * Tests the general case where there is an active user that has been
      * removed from the authority provider.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test
     public void testExistingActiveUserNotFoundInProvider() throws Exception {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/CreateUserActionTest.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/CreateUserActionTest.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/CreateUserActionTest.java
index 3d2081b..6486d32 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/CreateUserActionTest.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/CreateUserActionTest.java
@@ -37,11 +37,11 @@ import org.mockito.stubbing.Answer;
  */
 public class CreateUserActionTest {
 
-    private String USER_ID_2 = "2";
-    private String USER_ID_3 = "3";
+    private final String USER_ID_2 = "2";
+    private final String USER_ID_3 = "3";
 
-    private String USER_DN_1 = "data access exception when creating user";
-    private String USER_DN_3 = "general create user case";
+    private final String USER_DN_1 = "data access exception when creating user";
+    private final String USER_DN_3 = "general create user case";
 
     private DAOFactory daoFactory;
     private UserDAO userDao;
@@ -95,7 +95,7 @@ public class CreateUserActionTest {
     /**
      * Tests DataAccessExceptions that occur while creating user accounts.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test(expected = DataAccessException.class)
     public void testExceptionCreatingUser() throws Exception {
@@ -109,7 +109,7 @@ public class CreateUserActionTest {
     /**
      * Tests DataAccessExceptions that occur while create user authorities.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test(expected = DataAccessException.class)
     public void testExceptionCreatingAuthoroties() throws Exception {
@@ -123,7 +123,7 @@ public class CreateUserActionTest {
     /**
      * General case for creating a user.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test
     public void testCreateUserAccount() throws Exception {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/DisableUserActionTest.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/DisableUserActionTest.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/DisableUserActionTest.java
index de85298..b0e1ac1 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/DisableUserActionTest.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/DisableUserActionTest.java
@@ -33,9 +33,6 @@ import org.mockito.Mockito;
 import org.mockito.invocation.InvocationOnMock;
 import org.mockito.stubbing.Answer;
 
-/**
- *
- */
 public class DisableUserActionTest {
 
     private static final String USER_ID_1 = "1";
@@ -119,7 +116,7 @@ public class DisableUserActionTest {
     /**
      * Tests the case when the user account is unknown.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test(expected = AccountNotFoundException.class)
     public void testUnknownUserAccount() throws Exception {
@@ -130,7 +127,7 @@ public class DisableUserActionTest {
     /**
      * Tests the case when a DataAccessException is thrown by the userDao.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test(expected = DataAccessException.class)
     public void testDataAccessExceptionInUserDao() throws Exception {
@@ -141,7 +138,7 @@ public class DisableUserActionTest {
     /**
      * Tests the case when a AuthorityAccessException is thrown by the provider.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test(expected = AdministrationException.class)
     public void testAuthorityAccessExceptionInProvider() throws Exception {
@@ -152,7 +149,7 @@ public class DisableUserActionTest {
     /**
      * Tests the general case when the user is disabled.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test
     public void testDisableUser() throws Exception {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/InvalidateUserAccountActionTest.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/InvalidateUserAccountActionTest.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/InvalidateUserAccountActionTest.java
index 93dbe61..cffd280 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/InvalidateUserAccountActionTest.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/InvalidateUserAccountActionTest.java
@@ -87,11 +87,6 @@ public class InvalidateUserAccountActionTest {
         Mockito.when(daoFactory.getUserDAO()).thenReturn(userDao);
     }
 
-    /**
-     * Tests when the user account cannot be found.
-     *
-     * @throws Exception
-     */
     @Test(expected = AccountNotFoundException.class)
     public void testAccountNotFoundException() throws Exception {
         InvalidateUserAccountAction invalidateUserAccount = new InvalidateUserAccountAction(USER_ID_1);
@@ -101,7 +96,7 @@ public class InvalidateUserAccountActionTest {
     /**
      * Tests when a data access exception occurs when updating the user record.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test(expected = DataAccessException.class)
     public void testDataAccessException() throws Exception {
@@ -112,7 +107,7 @@ public class InvalidateUserAccountActionTest {
     /**
      * Tests the general case of invalidating a user.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test
     public void testInvalidateUser() throws Exception {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/RequestUserAccountActionTest.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/RequestUserAccountActionTest.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/RequestUserAccountActionTest.java
index 6e77d46..7707b2c 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/RequestUserAccountActionTest.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/RequestUserAccountActionTest.java
@@ -86,7 +86,7 @@ public class RequestUserAccountActionTest {
     /**
      * Tests when a user account already exists.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test(expected = IllegalArgumentException.class)
     public void testExistingAccount() throws Exception {
@@ -98,7 +98,7 @@ public class RequestUserAccountActionTest {
      * Tests when a DataAccessException occurs while saving the new account
      * request.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test(expected = DataAccessException.class)
     public void testDataAccessException() throws Exception {
@@ -109,7 +109,7 @@ public class RequestUserAccountActionTest {
     /**
      * Tests the general case for requesting a new user account.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test
     public void testRequestUserAccountAction() throws Exception {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/SeedUserAccountsActionTest.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/SeedUserAccountsActionTest.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/SeedUserAccountsActionTest.java
index f37fc84..652d992 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/SeedUserAccountsActionTest.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/SeedUserAccountsActionTest.java
@@ -16,7 +16,6 @@
  */
 package org.apache.nifi.admin.service.action;
 
-import org.apache.nifi.admin.service.action.SeedUserAccountsAction;
 import java.util.EnumSet;
 import java.util.HashSet;
 import java.util.Set;
@@ -187,7 +186,7 @@ public class SeedUserAccountsActionTest {
     /**
      * Tests seeding the user accounts.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test
     public void testSeedUsers() throws Exception {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/SetUserAuthoritiesActionTest.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/SetUserAuthoritiesActionTest.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/SetUserAuthoritiesActionTest.java
index dd3695c..22504f7 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/SetUserAuthoritiesActionTest.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-administration/src/test/java/org/apache/nifi/admin/service/action/SetUserAuthoritiesActionTest.java
@@ -176,7 +176,7 @@ public class SetUserAuthoritiesActionTest {
      * Test activating an unknown user account. User accounts are unknown then
      * there is no pending account for the user.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test(expected = AccountNotFoundException.class)
     public void testUnknownUser() throws Exception {
@@ -188,7 +188,7 @@ public class SetUserAuthoritiesActionTest {
      * Testing case then an AuthorityAccessException occurs while setting a
      * users authorities.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test(expected = AdministrationException.class)
     public void testAuthorityAccessException() throws Exception {
@@ -199,7 +199,7 @@ public class SetUserAuthoritiesActionTest {
     /**
      * Tests general case of setting user authorities.
      *
-     * @throws Exception
+     * @throws Exception ex
      */
     @Test
     public void testSetAuthorities() throws Exception {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ClusterManagerProtocolSender.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ClusterManagerProtocolSender.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ClusterManagerProtocolSender.java
index fa1547f..10653ff 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ClusterManagerProtocolSender.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ClusterManagerProtocolSender.java
@@ -26,44 +26,48 @@ import org.apache.nifi.reporting.BulletinRepository;
 
 /**
  * An interface for sending protocol messages from the cluster manager to nodes.
- * 
- * @author unattributed
+ *
  */
 public interface ClusterManagerProtocolSender {
-    
+
     /**
      * Sends a "flow request" message to a node.
+     *
      * @param msg a message
      * @return the response
-     * @throws ProtocolException if communication failed 
+     * @throws ProtocolException if communication failed
      */
     FlowResponseMessage requestFlow(FlowRequestMessage msg) throws ProtocolException;
 
     /**
      * Sends a "reconnection request" message to a node.
+     *
      * @param msg a message
-     * @return 
+     * @return the response
      * @throws ProtocolException if communication failed
      */
     ReconnectionResponseMessage requestReconnection(ReconnectionRequestMessage msg) throws ProtocolException;
-    
+
     /**
      * Sends a "disconnection request" message to a node.
+     *
      * @param msg a message
      * @throws ProtocolException if communication failed
      */
     void disconnect(DisconnectMessage msg) throws ProtocolException;
-    
+
     /**
      * Sends an "assign primary role" message to a node.
+     *
      * @param msg a message
-     * @throws ProtocolException if communication failed 
+     * @throws ProtocolException if communication failed
      */
     void assignPrimaryRole(PrimaryRoleAssignmentMessage msg) throws ProtocolException;
 
     /**
      * Sets the {@link BulletinRepository} that can be used to report bulletins
-     * @param bulletinRepository
+     *
+     * @param bulletinRepository repo
      */
     void setBulletinRepository(final BulletinRepository bulletinRepository);
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ConnectionRequest.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ConnectionRequest.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ConnectionRequest.java
index 1b5d007..63d1aa7 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ConnectionRequest.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ConnectionRequest.java
@@ -20,9 +20,9 @@ import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
 import org.apache.nifi.cluster.protocol.jaxb.message.ConnectionRequestAdapter;
 
 /**
- * A node's request to connect to the cluster.  The request contains a proposed
+ * A node's request to connect to the cluster. The request contains a proposed
  * identifier.
- * 
+ *
  * @author unattributed
  */
 @XmlJavaTypeAdapter(ConnectionRequestAdapter.class)
@@ -31,7 +31,7 @@ public class ConnectionRequest {
     private final NodeIdentifier proposedNodeIdentifier;
 
     public ConnectionRequest(final NodeIdentifier proposedNodeIdentifier) {
-        if(proposedNodeIdentifier == null) {
+        if (proposedNodeIdentifier == null) {
             throw new IllegalArgumentException("Proposed node identifier may not be null.");
         }
         this.proposedNodeIdentifier = proposedNodeIdentifier;


[04/11] incubator-nifi git commit: NIFI-271 checkpoint

Posted by jo...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/VolatileContentRepository.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/VolatileContentRepository.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/VolatileContentRepository.java
index 8deda3c..65756f4 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/VolatileContentRepository.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/VolatileContentRepository.java
@@ -103,7 +103,7 @@ public class VolatileContentRepository implements ContentRepository {
     private final ConcurrentMap<ContentClaim, ContentClaim> backupRepoClaimMap = new ConcurrentHashMap<>(256);
     private final AtomicReference<ContentRepository> backupRepositoryRef = new AtomicReference<>(null);
 
-    private ContentClaimManager claimManager;	// effectively final
+    private ContentClaimManager claimManager; // effectively final
 
     public VolatileContentRepository() {
         this(NiFiProperties.getInstance());
@@ -137,7 +137,7 @@ public class VolatileContentRepository implements ContentRepository {
     public void initialize(final ContentClaimManager claimManager) {
         this.claimManager = claimManager;
     }
-    
+
     @Override
     public void shutdown() {
         executor.shutdown();
@@ -147,7 +147,7 @@ public class VolatileContentRepository implements ContentRepository {
      * Specifies a Backup Repository where data should be written if this
      * Repository fills up
      *
-     * @param backup
+     * @param backup repo backup
      */
     public void setBackupRepository(final ContentRepository backup) {
         final boolean updated = backupRepositoryRef.compareAndSet(null, backup);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/VolatileFlowFileRepository.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/VolatileFlowFileRepository.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/VolatileFlowFileRepository.java
index a7020a6..9e429d6 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/VolatileFlowFileRepository.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/VolatileFlowFileRepository.java
@@ -34,7 +34,7 @@ import org.apache.nifi.controller.repository.claim.ContentClaimManager;
 public class VolatileFlowFileRepository implements FlowFileRepository {
 
     private final AtomicLong idGenerator = new AtomicLong(0L);
-    private ContentClaimManager claimManager;	// effectively final
+    private ContentClaimManager claimManager; // effectively final
 
     @Override
     public void initialize(final ContentClaimManager claimManager) {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/WriteAheadFlowFileRepository.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/WriteAheadFlowFileRepository.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/WriteAheadFlowFileRepository.java
index 292c258..0779c4d 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/WriteAheadFlowFileRepository.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/WriteAheadFlowFileRepository.java
@@ -102,7 +102,7 @@ public class WriteAheadFlowFileRepository implements FlowFileRepository, SyncLis
     // synced with disk.
     //
     // This is required due to the following scenario, which could exist if we did not do this:
-    // 
+    //
     // A Processor modifies a FlowFile (whose content is in ContentClaim A), writing the new content to ContentClaim B.
     // The processor removes ContentClaim A, which deletes the backing file.
     // The FlowFile Repository writes out this change but has not yet synced the update to disk.
@@ -112,12 +112,12 @@ public class WriteAheadFlowFileRepository implements FlowFileRepository, SyncLis
     // ContentClaim A does not exist anymore because the Session Commit destroyed the data.
     // This results in Data Loss!
     // However, the comment in the class's JavaDocs regarding sync'ing should also be considered.
-    // 
+    //
     // In order to avoid this, instead of destroying ContentClaim A, the ProcessSession puts the claim on the Claim Destruction Queue.
     // We periodically force a sync of the FlowFile Repository to the backing storage mechanism.
     // We can then destroy the data. If we end up syncing the FlowFile Repository to the backing storage mechanism and then restart
     // before the data is destroyed, it's okay because the data will be unknown to the Content Repository, so it will be destroyed
-    // on restart. 
+    // on restart.
     private final ConcurrentMap<Integer, BlockingQueue<ContentClaim>> claimsAwaitingDestruction = new ConcurrentHashMap<>();
 
     public WriteAheadFlowFileRepository() {
@@ -129,7 +129,7 @@ public class WriteAheadFlowFileRepository implements FlowFileRepository, SyncLis
         flowFileRepositoryPath = properties.getFlowFileRepositoryPath();
         numPartitions = properties.getFlowFileRepositoryPartitions();
         checkpointDelayMillis = FormatUtils.getTimeDuration(properties.getFlowFileRepositoryCheckpointInterval(), TimeUnit.MILLISECONDS);
-        
+
         checkpointExecutor = Executors.newSingleThreadScheduledExecutor();
     }
 
@@ -267,9 +267,9 @@ public class WriteAheadFlowFileRepository implements FlowFileRepository, SyncLis
      * the specified Swap File and returns the number of FlowFiles that were
      * persisted.
      *
-     * @param queue
-     * @param swapLocation
-     * @throws IOException
+     * @param queue queue to swap out
+     * @param swapLocation location to swap to
+     * @throws IOException ioe
      */
     @Override
     public void swapFlowFilesOut(final List<FlowFileRecord> swappedOut, final FlowFileQueue queue, final String swapLocation) throws IOException {
@@ -289,14 +289,6 @@ public class WriteAheadFlowFileRepository implements FlowFileRepository, SyncLis
         logger.info("Successfully swapped out {} FlowFiles from {} to Swap File {}", new Object[]{swappedOut.size(), queue, swapLocation});
     }
 
-    /**
-     * Swaps FlowFiles into memory space from the given Swap File
-     *
-     * @param swapLocation
-     * @param swapRecords
-     * @param queue
-     * @throws IOException
-     */
     @Override
     public void swapFlowFilesIn(final String swapLocation, final List<FlowFileRecord> swapRecords, final FlowFileQueue queue) throws IOException {
         final List<RepositoryRecord> repoRecords = new ArrayList<>();

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/claim/StandardContentClaim.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/claim/StandardContentClaim.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/claim/StandardContentClaim.java
index c43f3fe..54a1b2c 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/claim/StandardContentClaim.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/claim/StandardContentClaim.java
@@ -27,7 +27,6 @@ import java.util.concurrent.atomic.AtomicInteger;
  * <p>
  * Must be thread safe</p>
  *
- * @author none
  */
 public final class StandardContentClaim implements ContentClaim, Comparable<ContentClaim> {
 
@@ -38,14 +37,6 @@ public final class StandardContentClaim implements ContentClaim, Comparable<Cont
     private final AtomicInteger claimantCount = new AtomicInteger(0);
     private final int hashCode;
 
-    /**
-     * Constructs a content claim
-     *
-     * @param container
-     * @param section
-     * @param id
-     * @param lossTolerant
-     */
     StandardContentClaim(final String container, final String section, final String id, final boolean lossTolerant) {
         this.container = container.intern();
         this.section = section.intern();
@@ -100,7 +91,7 @@ public final class StandardContentClaim implements ContentClaim, Comparable<Cont
      * Provides the natural ordering for ContentClaim objects. By default they
      * are sorted by their id, then container, then section
      *
-     * @param other
+     * @param other other claim
      * @return x such that x <=1 if this is less than other;
      * x=0 if this.equals(other);
      * x >= 1 if this is greater than other

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/claim/StandardContentClaimManager.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/claim/StandardContentClaimManager.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/claim/StandardContentClaimManager.java
index 43bbb5a..b68f95e 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/claim/StandardContentClaimManager.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/claim/StandardContentClaimManager.java
@@ -34,16 +34,6 @@ public class StandardContentClaimManager implements ContentClaimManager {
 
     private static final BlockingQueue<ContentClaim> destructableClaims = new LinkedBlockingQueue<>(50000);
 
-    /**
-     * Creates a new Content Claim with the given id, container, section, and
-     * loss tolerance.
-     *
-     * @param id
-     * @param container
-     * @param section
-     * @param lossTolerant
-     * @return
-     */
     @Override
     public ContentClaim newContentClaim(final String container, final String section, final String id, final boolean lossTolerant) {
         return new StandardContentClaim(container, section, id, lossTolerant);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/io/ByteCountingOutputStream.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/io/ByteCountingOutputStream.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/io/ByteCountingOutputStream.java
index f7da136..4e727e9 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/io/ByteCountingOutputStream.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/io/ByteCountingOutputStream.java
@@ -40,9 +40,7 @@ public class ByteCountingOutputStream extends OutputStream {
         write(b, 0, b.length);
     }
 
-    ;
-	
-	@Override
+    @Override
     public void write(byte[] b, int off, int len) throws IOException {
         out.write(b, off, len);
         bytesWrittenHolder.increment(len);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/io/FlowFileAccessInputStream.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/io/FlowFileAccessInputStream.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/io/FlowFileAccessInputStream.java
index f349887..a710070 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/io/FlowFileAccessInputStream.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/io/FlowFileAccessInputStream.java
@@ -56,10 +56,8 @@ public class FlowFileAccessInputStream extends FilterInputStream {
     }
 
     /**
-     * Returns the ContentNotFoundException that was thrown by this stream, or
-     * <code>null</code> if no such Exception was thrown.
-     *
-     * @return
+     * @return the ContentNotFoundException that was thrown by this stream, or
+     * <code>null</code> if no such Exception was thrown
      */
     public ContentNotFoundException getContentNotFoundException() {
         return thrown;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/ConnectableProcessContext.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/ConnectableProcessContext.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/ConnectableProcessContext.java
index acb3a01..01285b0 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/ConnectableProcessContext.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/ConnectableProcessContext.java
@@ -179,14 +179,14 @@ public class ConnectableProcessContext implements ProcessContext {
 
     @Override
     public Set<Relationship> getAvailableRelationships() {
-        for ( final Connection connection : connectable.getConnections() ) {
-            if ( connection.getFlowFileQueue().isFull() ) {
+        for (final Connection connection : connectable.getConnections()) {
+            if (connection.getFlowFileQueue().isFull()) {
                 return Collections.emptySet();
             }
         }
-        
+
         final Collection<Relationship> relationships = connectable.getRelationships();
-        if ( relationships instanceof Set ) {
+        if (relationships instanceof Set) {
             return (Set<Relationship>) relationships;
         }
         return new HashSet<>(connectable.getRelationships());

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/EventDrivenSchedulingAgent.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/EventDrivenSchedulingAgent.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/EventDrivenSchedulingAgent.java
index 7455bf8..77ae686 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/EventDrivenSchedulingAgent.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/EventDrivenSchedulingAgent.java
@@ -65,7 +65,8 @@ public class EventDrivenSchedulingAgent implements SchedulingAgent {
     private final ConcurrentMap<Connectable, AtomicLong> connectionIndexMap = new ConcurrentHashMap<>();
     private final ConcurrentMap<Connectable, ScheduleState> scheduleStates = new ConcurrentHashMap<>();
 
-    public EventDrivenSchedulingAgent(final FlowEngine flowEngine, final ControllerServiceProvider flowController, final EventDrivenWorkerQueue workerQueue, final ProcessContextFactory contextFactory, final int maxThreadCount, final StringEncryptor encryptor) {
+    public EventDrivenSchedulingAgent(final FlowEngine flowEngine, final ControllerServiceProvider flowController,
+            final EventDrivenWorkerQueue workerQueue, final ProcessContextFactory contextFactory, final int maxThreadCount, final StringEncryptor encryptor) {
         this.flowEngine = flowEngine;
         this.controllerServiceProvider = flowController;
         this.workerQueue = workerQueue;
@@ -265,15 +266,15 @@ public class EventDrivenSchedulingAgent implements SchedulingAgent {
         private void trigger(final Connectable worker, final ScheduleState scheduleState, final ConnectableProcessContext processContext, final ProcessSessionFactory sessionFactory) {
             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;
+                // 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);
@@ -302,18 +303,19 @@ public class EventDrivenSchedulingAgent implements SchedulingAgent {
             }
         }
 
-        private void trigger(final ProcessorNode worker, final ProcessContext context, final ScheduleState scheduleState, final StandardProcessContext processContext, final ProcessSessionFactory sessionFactory) {
+        private void trigger(final ProcessorNode worker, final ProcessContext context, final ScheduleState scheduleState,
+                final StandardProcessContext processContext, final ProcessSessionFactory sessionFactory) {
             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;
+                // 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/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/QuartzSchedulingAgent.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/QuartzSchedulingAgent.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/QuartzSchedulingAgent.java
index 3355e73..4278cee 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/QuartzSchedulingAgent.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/QuartzSchedulingAgent.java
@@ -135,7 +135,7 @@ public class QuartzSchedulingAgent implements SchedulingAgent {
             final Callable<Boolean> continuallyRunTask;
             if (connectable.getConnectableType() == ConnectableType.PROCESSOR) {
                 final ProcessorNode procNode = (ProcessorNode) connectable;
-                
+
                 final StandardProcessContext standardProcContext = new StandardProcessContext(procNode, flowController, encryptor);
                 ContinuallyRunProcessorTask runnableTask = new ContinuallyRunProcessorTask(this, procNode, flowController, contextFactory, scheduleState, standardProcContext);
                 continuallyRunTask = runnableTask;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/ScheduleState.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/ScheduleState.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/ScheduleState.java
index ff17912..cb7f55f 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/ScheduleState.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/ScheduleState.java
@@ -28,7 +28,7 @@ public class ScheduleState {
 
     private final AtomicInteger activeThreadCount = new AtomicInteger(0);
     private final AtomicBoolean scheduled = new AtomicBoolean(false);
-    private final Set<ScheduledFuture<?>> futures = new HashSet<ScheduledFuture<?>>();
+    private final Set<ScheduledFuture<?>> futures = new HashSet<>();
     private final AtomicBoolean mustCallOnStoppedMethods = new AtomicBoolean(false);
     private volatile long lastStopTime = -1;
 
@@ -78,7 +78,7 @@ public class ScheduleState {
      * Establishes the list of relevant futures for this processor. Replaces any
      * previously held futures.
      *
-     * @param newFutures
+     * @param newFutures futures
      */
     public synchronized void setFutures(final Collection<ScheduledFuture<?>> newFutures) {
         futures.clear();
@@ -89,7 +89,7 @@ public class ScheduleState {
         futures.remove(oldFuture);
         futures.add(newFuture);
     }
-    
+
     public synchronized Set<ScheduledFuture<?>> getFutures() {
         return Collections.unmodifiableSet(futures);
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/StandardProcessScheduler.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/StandardProcessScheduler.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/StandardProcessScheduler.java
index 7725823..bb565cb 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/StandardProcessScheduler.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/StandardProcessScheduler.java
@@ -147,12 +147,11 @@ public final class StandardProcessScheduler implements ProcessScheduler {
                 LOG.error("", t);
             }
         }
-        
+
         frameworkTaskExecutor.shutdown();
         componentLifeCycleThreadPool.shutdown();
     }
 
-    
     @Override
     public void schedule(final ReportingTaskNode taskNode) {
         final ScheduleState scheduleState = getScheduleState(requireNonNull(taskNode));
@@ -184,13 +183,13 @@ public final class StandardProcessScheduler implements ProcessScheduler {
                         try (final NarCloseable x = NarCloseable.withNarLoader()) {
                             ReflectionUtils.invokeMethodsWithAnnotation(OnConfigured.class, OnScheduled.class, reportingTask, taskNode.getConfigurationContext());
                         }
-                        
+
                         break;
                     } catch (final Exception e) {
                         final Throwable cause = (e instanceof InvocationTargetException) ? e.getCause() : e;
                         final ComponentLog componentLog = new SimpleProcessLogger(reportingTask.getIdentifier(), reportingTask);
                         componentLog.error("Failed to invoke @OnEnabled method due to {}", cause);
-                        
+
                         LOG.error("Failed to invoke the On-Scheduled Lifecycle methods of {} due to {}; administratively yielding this ReportingTask and will attempt to schedule it again after {}",
                                 new Object[]{reportingTask, e.toString(), administrativeYieldDuration}, e);
                         try {
@@ -208,20 +207,19 @@ public final class StandardProcessScheduler implements ProcessScheduler {
         taskNode.setScheduledState(ScheduledState.RUNNING);
     }
 
-    
     @Override
     public void unschedule(final ReportingTaskNode taskNode) {
         final ScheduleState scheduleState = getScheduleState(requireNonNull(taskNode));
         if (!scheduleState.isScheduled()) {
             return;
         }
-        
+
         taskNode.verifyCanStop();
         final SchedulingAgent agent = getSchedulingAgent(taskNode.getSchedulingStrategy());
         final ReportingTask reportingTask = taskNode.getReportingTask();
         scheduleState.setScheduled(false);
         taskNode.setScheduledState(ScheduledState.STOPPED);
-        
+
         final Runnable unscheduleReportingTaskRunnable = new Runnable() {
             @SuppressWarnings("deprecation")
             @Override
@@ -240,7 +238,7 @@ public final class StandardProcessScheduler implements ProcessScheduler {
                     LOG.error("Failed to invoke the @OnUnscheduled methods of {} due to {}; administratively yielding this ReportingTask and will attempt to schedule it again after {}",
                             reportingTask, cause.toString(), administrativeYieldDuration);
                     LOG.error("", cause);
-                    
+
                     try {
                         Thread.sleep(administrativeYieldMillis);
                     } catch (final InterruptedException ie) {
@@ -293,32 +291,32 @@ public final class StandardProcessScheduler implements ProcessScheduler {
                     final StandardProcessContext processContext = new StandardProcessContext(procNode, controllerServiceProvider, encryptor);
 
                     final Set<String> serviceIds = new HashSet<>();
-                    for ( final PropertyDescriptor descriptor : processContext.getProperties().keySet() ) {
+                    for (final PropertyDescriptor descriptor : processContext.getProperties().keySet()) {
                         final Class<? extends ControllerService> serviceDefinition = descriptor.getControllerServiceDefinition();
-                        if ( serviceDefinition != null ) {
+                        if (serviceDefinition != null) {
                             final String serviceId = processContext.getProperty(descriptor).getValue();
-                            if ( serviceId != null ) {
-                            	serviceIds.add(serviceId);
+                            if (serviceId != null) {
+                                serviceIds.add(serviceId);
                             }
                         }
                     }
-                    
-                    attemptOnScheduled: while (true) {
+
+                    attemptOnScheduled:
+                    while (true) {
                         try {
                             synchronized (scheduleState) {
-                                for ( final String serviceId : serviceIds ) {
+                                for (final String serviceId : serviceIds) {
                                     final boolean enabled = processContext.isControllerServiceEnabled(serviceId);
-                                    if ( !enabled ) {
+                                    if (!enabled) {
                                         LOG.debug("Controller Service with ID {} is not yet enabled, so will not start {} yet", serviceId, procNode);
                                         Thread.sleep(administrativeYieldMillis);
                                         continue attemptOnScheduled;
                                     }
                                 }
-                                
+
                                 // if no longer scheduled to run, then we're finished. This can happen, for example,
-                                // if the @OnScheduled method throws an Exception and the user stops the processor 
+                                // if the @OnScheduled method throws an Exception and the user stops the processor
                                 // while we're administratively yielded.
-                                // 
                                 // we also check if the schedule state's last start time is equal to what it was before.
                                 // if not, then means that the processor has been stopped and started again, so we should just
                                 // bail; another thread will be responsible for invoking the @OnScheduled methods.
@@ -363,12 +361,6 @@ public final class StandardProcessScheduler implements ProcessScheduler {
         componentLifeCycleThreadPool.execute(startProcRunnable);
     }
 
-    /**
-     * Used to delay scheduling the given Processor to run until its yield
-     * duration expires.
-     *
-     * @param procNode
-     */
     @Override
     public void yield(final ProcessorNode procNode) {
         // This exists in the ProcessScheduler so that the scheduler can take advantage of the fact that
@@ -381,7 +373,7 @@ public final class StandardProcessScheduler implements ProcessScheduler {
         // the context. If this Processor has X number of threads, we end up submitting X new tasks while the previous
         // X-1 tasks are still running. At this point, another thread could finish and do the same thing, resulting in
         // an additional X-1 extra tasks being submitted.
-        // 
+        //
         // As a result, we simply removed this buggy implementation, as it was a very minor performance optimization
         // that gave very bad results.
     }
@@ -431,24 +423,11 @@ public final class StandardProcessScheduler implements ProcessScheduler {
         getSchedulingAgent(worker).onEvent(worker);
     }
 
-    /**
-     * Returns the number of threads that are currently active for the given
-     * <code>Connectable</code>.
-     *
-     * @return
-     */
     @Override
     public int getActiveThreadCount(final Object scheduled) {
         return getScheduleState(scheduled).getActiveThreadCount();
     }
 
-    /**
-     * Begins scheduling the given port to run.
-     *
-     * @throws NullPointerException if the Port is null
-     * @throws IllegalStateException if the Port is already scheduled to run or
-     * has threads running
-     */
     @Override
     public void startPort(final Port port) {
         if (!port.isValid()) {
@@ -501,7 +480,7 @@ public final class StandardProcessScheduler implements ProcessScheduler {
         if (!state.isScheduled()) {
             return;
         }
-        
+
         state.setScheduled(false);
         getSchedulingAgent(connectable).unschedule(connectable, state);
 
@@ -561,7 +540,7 @@ public final class StandardProcessScheduler implements ProcessScheduler {
         if (procNode.getScheduledState() != ScheduledState.DISABLED) {
             throw new IllegalStateException("Processor cannot be enabled because it is not disabled");
         }
-        
+
         procNode.setScheduledState(ScheduledState.STOPPED);
     }
 
@@ -570,21 +549,22 @@ public final class StandardProcessScheduler implements ProcessScheduler {
         if (procNode.getScheduledState() != ScheduledState.STOPPED) {
             throw new IllegalStateException("Processor cannot be disabled because its state is set to " + procNode.getScheduledState());
         }
-        
+
         procNode.setScheduledState(ScheduledState.DISABLED);
     }
 
     public synchronized void enableReportingTask(final ReportingTaskNode taskNode) {
-        if ( taskNode.getScheduledState() != ScheduledState.DISABLED ) {
+        if (taskNode.getScheduledState() != ScheduledState.DISABLED) {
             throw new IllegalStateException("Reporting Task cannot be enabled because it is not disabled");
         }
 
         taskNode.setScheduledState(ScheduledState.STOPPED);
     }
-    
+
     public synchronized void disableReportingTask(final ReportingTaskNode taskNode) {
-        if ( taskNode.getScheduledState() != ScheduledState.STOPPED ) {
-            throw new IllegalStateException("Reporting Task cannot be disabled because its state is set to " + taskNode.getScheduledState() + " but transition to DISABLED state is allowed only from the STOPPED state");
+        if (taskNode.getScheduledState() != ScheduledState.STOPPED) {
+            throw new IllegalStateException("Reporting Task cannot be disabled because its state is set to " + taskNode.getScheduledState()
+                    + " but transition to DISABLED state is allowed only from the STOPPED state");
         }
 
         taskNode.setScheduledState(ScheduledState.DISABLED);
@@ -597,12 +577,12 @@ public final class StandardProcessScheduler implements ProcessScheduler {
     }
 
     /**
-     * Returns the ScheduleState that is registered for the given component;
-     * if no ScheduleState current is registered, one is created and registered
+     * Returns the ScheduleState that is registered for the given component; if
+     * no ScheduleState current is registered, one is created and registered
      * atomically, and then that value is returned.
      *
-     * @param schedulable
-     * @return
+     * @param schedulable schedulable
+     * @return scheduled state
      */
     private ScheduleState getScheduleState(final Object schedulable) {
         ScheduleState scheduleState = scheduleStates.get(schedulable);
@@ -620,21 +600,21 @@ public final class StandardProcessScheduler implements ProcessScheduler {
     public void enableControllerService(final ControllerServiceNode service) {
         service.setState(ControllerServiceState.ENABLING);
         final ScheduleState scheduleState = getScheduleState(service);
-        
+
         final Runnable enableRunnable = new Runnable() {
             @Override
             public void run() {
                 try (final NarCloseable x = NarCloseable.withNarLoader()) {
                     long lastStopTime = scheduleState.getLastStopTime();
                     final ConfigurationContext configContext = new StandardConfigurationContext(service, controllerServiceProvider);
-                    
+
                     while (true) {
                         try {
                             synchronized (scheduleState) {
                                 // if no longer enabled, then we're finished. This can happen, for example,
                                 // if the @OnEnabled method throws an Exception and the user disables the service
                                 // while we're administratively yielded.
-                                // 
+                                //
                                 // we also check if the schedule state's last stop time is equal to what it was before.
                                 // if not, then means that the service has been disabled and enabled again, so we should just
                                 // bail; another thread will be responsible for invoking the @OnEnabled methods.
@@ -649,11 +629,11 @@ public final class StandardProcessScheduler implements ProcessScheduler {
                             }
                         } catch (final Exception e) {
                             final Throwable cause = (e instanceof InvocationTargetException) ? e.getCause() : e;
-                            
+
                             final ComponentLog componentLog = new SimpleProcessLogger(service.getIdentifier(), service);
                             componentLog.error("Failed to invoke @OnEnabled method due to {}", cause);
                             LOG.error("Failed to invoke @OnEnabled method of {} due to {}", service.getControllerServiceImplementation(), cause.toString());
-                            if ( LOG.isDebugEnabled() ) {
+                            if (LOG.isDebugEnabled()) {
                                 LOG.error("", cause);
                             }
 
@@ -666,15 +646,15 @@ public final class StandardProcessScheduler implements ProcessScheduler {
                     final Throwable cause = (t instanceof InvocationTargetException) ? t.getCause() : t;
                     final ComponentLog componentLog = new SimpleProcessLogger(service.getIdentifier(), service);
                     componentLog.error("Failed to invoke @OnEnabled method due to {}", cause);
-                    
+
                     LOG.error("Failed to invoke @OnEnabled method on {} due to {}", service.getControllerServiceImplementation(), cause.toString());
-                    if ( LOG.isDebugEnabled() ) {
+                    if (LOG.isDebugEnabled()) {
                         LOG.error("", cause);
                     }
                 }
             }
         };
-        
+
         scheduleState.setScheduled(true);
         componentLifeCycleThreadPool.execute(enableRunnable);
     }
@@ -682,7 +662,7 @@ public final class StandardProcessScheduler implements ProcessScheduler {
     @Override
     public void disableControllerService(final ControllerServiceNode service) {
         service.verifyCanDisable();
-        
+
         final ScheduleState state = getScheduleState(requireNonNull(service));
         final Runnable disableRunnable = new Runnable() {
             @Override
@@ -693,8 +673,8 @@ public final class StandardProcessScheduler implements ProcessScheduler {
 
                 try (final NarCloseable x = NarCloseable.withNarLoader()) {
                     final ConfigurationContext configContext = new StandardConfigurationContext(service, controllerServiceProvider);
-                    
-                    while(true) {
+
+                    while (true) {
                         try {
                             ReflectionUtils.invokeMethodsWithAnnotation(OnDisabled.class, service.getControllerServiceImplementation(), configContext);
                             heartbeater.heartbeat();
@@ -704,17 +684,18 @@ public final class StandardProcessScheduler implements ProcessScheduler {
                             final Throwable cause = (e instanceof InvocationTargetException) ? e.getCause() : e;
                             final ComponentLog componentLog = new SimpleProcessLogger(service.getIdentifier(), service);
                             componentLog.error("Failed to invoke @OnDisabled method due to {}", cause);
-                            
+
                             LOG.error("Failed to invoke @OnDisabled method of {} due to {}", service.getControllerServiceImplementation(), cause.toString());
-                            if ( LOG.isDebugEnabled() ) {
+                            if (LOG.isDebugEnabled()) {
                                 LOG.error("", cause);
                             }
-        
+
                             ReflectionUtils.quietlyInvokeMethodsWithAnnotation(OnDisabled.class, service.getControllerServiceImplementation(), configContext);
                             try {
                                 Thread.sleep(administrativeYieldMillis);
-                            } catch (final InterruptedException ie) {}
-                            
+                            } catch (final InterruptedException ie) {
+                            }
+
                             continue;
                         }
                     }
@@ -723,6 +704,6 @@ public final class StandardProcessScheduler implements ProcessScheduler {
         };
 
         service.setState(ControllerServiceState.DISABLING);
-        componentLifeCycleThreadPool.execute(disableRunnable);        
+        componentLifeCycleThreadPool.execute(disableRunnable);
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/TimerDrivenSchedulingAgent.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/TimerDrivenSchedulingAgent.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/TimerDrivenSchedulingAgent.java
index f3eecbd..c4e6609 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/TimerDrivenSchedulingAgent.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/scheduling/TimerDrivenSchedulingAgent.java
@@ -42,9 +42,10 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 public class TimerDrivenSchedulingAgent implements SchedulingAgent {
+
     private static final Logger logger = LoggerFactory.getLogger(TimerDrivenSchedulingAgent.class);
     private final long noWorkYieldNanos;
-    
+
     private final FlowController flowController;
     private final FlowEngine flowEngine;
     private final ProcessContextFactory contextFactory;
@@ -57,7 +58,7 @@ public class TimerDrivenSchedulingAgent implements SchedulingAgent {
         this.flowEngine = flowEngine;
         this.contextFactory = contextFactory;
         this.encryptor = encryptor;
-        
+
         final String boredYieldDuration = NiFiProperties.getInstance().getBoredYieldDuration();
         try {
             noWorkYieldNanos = FormatUtils.getTimeDuration(boredYieldDuration, TimeUnit.NANOSECONDS);
@@ -84,31 +85,30 @@ public class TimerDrivenSchedulingAgent implements SchedulingAgent {
         logger.info("{} started.", taskNode.getReportingTask());
     }
 
-    
     @Override
     public void schedule(final Connectable connectable, final ScheduleState scheduleState) {
-        
+
         final List<ScheduledFuture<?>> futures = new ArrayList<>();
         for (int i = 0; i < connectable.getMaxConcurrentTasks(); i++) {
             final Callable<Boolean> continuallyRunTask;
             final ProcessContext processContext;
-            
+
             // Determine the task to run and create it.
             if (connectable.getConnectableType() == ConnectableType.PROCESSOR) {
                 final ProcessorNode procNode = (ProcessorNode) connectable;
                 final StandardProcessContext standardProcContext = new StandardProcessContext(procNode, flowController, encryptor);
-                final ContinuallyRunProcessorTask runnableTask = new ContinuallyRunProcessorTask(this, procNode, flowController, 
+                final ContinuallyRunProcessorTask runnableTask = new ContinuallyRunProcessorTask(this, procNode, flowController,
                         contextFactory, scheduleState, standardProcContext);
-                
+
                 continuallyRunTask = runnableTask;
                 processContext = standardProcContext;
             } else {
                 processContext = new ConnectableProcessContext(connectable, encryptor);
                 continuallyRunTask = new ContinuallyRunConnectableTask(contextFactory, connectable, scheduleState, processContext);
             }
-            
+
             final AtomicReference<ScheduledFuture<?>> futureRef = new AtomicReference<>();
-            
+
             final Runnable yieldDetectionRunnable = new Runnable() {
                 @Override
                 public void run() {
@@ -122,50 +122,50 @@ public class TimerDrivenSchedulingAgent implements SchedulingAgent {
                     } catch (final Exception e) {
                         throw new ProcessException(e);
                     }
-                    
+
                     // If the component is yielded, cancel its future and re-submit it to run again
                     // after the yield has expired.
                     final long newYieldExpiration = connectable.getYieldExpiration();
-                    if ( newYieldExpiration > System.currentTimeMillis() ) {
+                    if (newYieldExpiration > System.currentTimeMillis()) {
                         final long yieldMillis = System.currentTimeMillis() - newYieldExpiration;
                         final ScheduledFuture<?> scheduledFuture = futureRef.get();
-                        if ( scheduledFuture == null ) {
+                        if (scheduledFuture == null) {
                             return;
                         }
-                        
+
                         // If we are able to cancel the future, create a new one and update the ScheduleState so that it has
                         // an accurate accounting of which futures are outstanding; we must then also update the futureRef
                         // so that we can do this again the next time that the component is yielded.
                         if (scheduledFuture.cancel(false)) {
                             final long yieldNanos = TimeUnit.MILLISECONDS.toNanos(yieldMillis);
-                            
+
                             synchronized (scheduleState) {
-                                if ( scheduleState.isScheduled() ) {
-                                    final ScheduledFuture<?> newFuture = flowEngine.scheduleWithFixedDelay(this, yieldNanos, 
+                                if (scheduleState.isScheduled()) {
+                                    final ScheduledFuture<?> newFuture = flowEngine.scheduleWithFixedDelay(this, yieldNanos,
                                             connectable.getSchedulingPeriod(TimeUnit.NANOSECONDS), TimeUnit.NANOSECONDS);
-                                    
+
                                     scheduleState.replaceFuture(scheduledFuture, newFuture);
                                     futureRef.set(newFuture);
                                 }
                             }
                         }
-                    } else if ( noWorkYieldNanos > 0L && shouldYield ) {
+                    } else if (noWorkYieldNanos > 0L && shouldYield) {
                         // Component itself didn't yield but there was no work to do, so the framework will choose
                         // to yield the component automatically for a short period of time.
                         final ScheduledFuture<?> scheduledFuture = futureRef.get();
-                        if ( scheduledFuture == null ) {
+                        if (scheduledFuture == null) {
                             return;
                         }
-                        
+
                         // If we are able to cancel the future, create a new one and update the ScheduleState so that it has
                         // an accurate accounting of which futures are outstanding; we must then also update the futureRef
                         // so that we can do this again the next time that the component is yielded.
                         if (scheduledFuture.cancel(false)) {
                             synchronized (scheduleState) {
-                                if ( scheduleState.isScheduled() ) {
-                                    final ScheduledFuture<?> newFuture = flowEngine.scheduleWithFixedDelay(this, noWorkYieldNanos, 
+                                if (scheduleState.isScheduled()) {
+                                    final ScheduledFuture<?> newFuture = flowEngine.scheduleWithFixedDelay(this, noWorkYieldNanos,
                                             connectable.getSchedulingPeriod(TimeUnit.NANOSECONDS), TimeUnit.NANOSECONDS);
-                                    
+
                                     scheduleState.replaceFuture(scheduledFuture, newFuture);
                                     futureRef.set(newFuture);
                                 }
@@ -176,13 +176,13 @@ public class TimerDrivenSchedulingAgent implements SchedulingAgent {
             };
 
             // Schedule the task to run
-            final ScheduledFuture<?> future = flowEngine.scheduleWithFixedDelay(yieldDetectionRunnable, 0L, 
+            final ScheduledFuture<?> future = flowEngine.scheduleWithFixedDelay(yieldDetectionRunnable, 0L,
                     connectable.getSchedulingPeriod(TimeUnit.NANOSECONDS), TimeUnit.NANOSECONDS);
-            
+
             // now that we have the future, set the atomic reference so that if the component is yielded we
             // are able to then cancel this future.
             futureRef.set(future);
-            
+
             // Keep track of the futures so that we can update the ScheduleState.
             futures.add(future);
         }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/ControllerServiceLoader.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/ControllerServiceLoader.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/ControllerServiceLoader.java
index 1fde670..92fa3b2 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/ControllerServiceLoader.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/ControllerServiceLoader.java
@@ -43,15 +43,16 @@ import org.w3c.dom.Element;
 import org.xml.sax.SAXException;
 import org.xml.sax.SAXParseException;
 
-/**
- *
- */
 public class ControllerServiceLoader {
 
     private static final Logger logger = LoggerFactory.getLogger(ControllerServiceLoader.class);
 
-
-    public static List<ControllerServiceNode> loadControllerServices(final ControllerServiceProvider provider, final InputStream serializedStream, final StringEncryptor encryptor, final BulletinRepository bulletinRepo, final boolean autoResumeState) throws IOException {
+    public static List<ControllerServiceNode> loadControllerServices(
+            final ControllerServiceProvider provider,
+            final InputStream serializedStream,
+            final StringEncryptor encryptor,
+            final BulletinRepository bulletinRepo,
+            final boolean autoResumeState) throws IOException {
         final DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
         documentBuilderFactory.setNamespaceAware(true);
 
@@ -87,66 +88,70 @@ public class ControllerServiceLoader {
                     throw err;
                 }
             });
-            
+
             final Document document = builder.parse(in);
             final Element controllerServices = document.getDocumentElement();
             final List<Element> serviceElements = DomUtils.getChildElementsByTagName(controllerServices, "controllerService");
-            return new ArrayList<ControllerServiceNode>(loadControllerServices(serviceElements, provider, encryptor, bulletinRepo, autoResumeState));
+            return new ArrayList<>(loadControllerServices(serviceElements, provider, encryptor, bulletinRepo, autoResumeState));
         } catch (SAXException | ParserConfigurationException sxe) {
             throw new IOException(sxe);
         }
     }
-    
-    public static Collection<ControllerServiceNode> loadControllerServices(final List<Element> serviceElements, final ControllerServiceProvider provider, final StringEncryptor encryptor, final BulletinRepository bulletinRepo, final boolean autoResumeState) {
+
+    public static Collection<ControllerServiceNode> loadControllerServices(
+            final List<Element> serviceElements,
+            final ControllerServiceProvider provider,
+            final StringEncryptor encryptor,
+            final BulletinRepository bulletinRepo,
+            final boolean autoResumeState) {
         final Map<ControllerServiceNode, Element> nodeMap = new HashMap<>();
-        for ( final Element serviceElement : serviceElements ) {
+        for (final Element serviceElement : serviceElements) {
             final ControllerServiceNode serviceNode = createControllerService(provider, serviceElement, encryptor);
-            // We need to clone the node because it will be used in a separate thread below, and 
+            // We need to clone the node because it will be used in a separate thread below, and
             // Element is not thread-safe.
             nodeMap.put(serviceNode, (Element) serviceElement.cloneNode(true));
         }
-        for ( final Map.Entry<ControllerServiceNode, Element> entry : nodeMap.entrySet() ) {
+        for (final Map.Entry<ControllerServiceNode, Element> entry : nodeMap.entrySet()) {
             configureControllerService(entry.getKey(), entry.getValue(), encryptor);
         }
-        
+
         // Start services
-        if ( autoResumeState ) {
+        if (autoResumeState) {
             final Set<ControllerServiceNode> nodesToEnable = new HashSet<>();
-            
-            for ( final ControllerServiceNode node : nodeMap.keySet() ) {
+
+            for (final ControllerServiceNode node : nodeMap.keySet()) {
                 final Element controllerServiceElement = nodeMap.get(node);
 
                 final ControllerServiceDTO dto;
                 synchronized (controllerServiceElement.getOwnerDocument()) {
                     dto = FlowFromDOMFactory.getControllerService(controllerServiceElement, encryptor);
                 }
-                
+
                 final ControllerServiceState state = ControllerServiceState.valueOf(dto.getState());
                 if (state == ControllerServiceState.ENABLED) {
                     nodesToEnable.add(node);
                 }
             }
-            
+
             provider.enableControllerServices(nodesToEnable);
         }
-        
+
         return nodeMap.keySet();
     }
-    
-    
+
     private static ControllerServiceNode createControllerService(final ControllerServiceProvider provider, final Element controllerServiceElement, final StringEncryptor encryptor) {
         final ControllerServiceDTO dto = FlowFromDOMFactory.getControllerService(controllerServiceElement, encryptor);
-        
+
         final ControllerServiceNode node = provider.createControllerService(dto.getType(), dto.getId(), false);
         node.setName(dto.getName());
         node.setComments(dto.getComments());
         return node;
     }
-    
+
     private static void configureControllerService(final ControllerServiceNode node, final Element controllerServiceElement, final StringEncryptor encryptor) {
         final ControllerServiceDTO dto = FlowFromDOMFactory.getControllerService(controllerServiceElement, encryptor);
         node.setAnnotationData(dto.getAnnotationData());
-        
+
         for (final Map.Entry<String, String> entry : dto.getProperties().entrySet()) {
             if (entry.getValue() == null) {
                 node.removeProperty(entry.getKey());

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceInitializationContext.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceInitializationContext.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceInitializationContext.java
index 8d46b05..02d6263 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceInitializationContext.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceInitializationContext.java
@@ -64,15 +64,15 @@ public class StandardControllerServiceInitializationContext implements Controlle
     public boolean isControllerServiceEnabled(final ControllerService service) {
         return serviceProvider.isControllerServiceEnabled(service);
     }
-    
+
     @Override
     public boolean isControllerServiceEnabling(String serviceIdentifier) {
         return serviceProvider.isControllerServiceEnabling(serviceIdentifier);
     }
-    
+
     @Override
     public String getControllerServiceName(final String serviceIdentifier) {
-    	return serviceProvider.getControllerServiceName(serviceIdentifier);
+        return serviceProvider.getControllerServiceName(serviceIdentifier);
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceNode.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceNode.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceNode.java
index e768b9a..e577ffe 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceNode.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceNode.java
@@ -59,12 +59,11 @@ public class StandardControllerServiceNode extends AbstractConfiguredComponent i
         this.serviceProvider = serviceProvider;
     }
 
-    
     @Override
     public ControllerService getProxiedControllerService() {
         return proxedControllerService;
     }
-    
+
     @Override
     public ControllerService getControllerServiceImplementation() {
         return implementation;
@@ -106,23 +105,23 @@ public class StandardControllerServiceNode extends AbstractConfiguredComponent i
             throw new IllegalStateException("Cannot modify Controller Service configuration because it is currently enabled. Please disable the Controller Service first.");
         }
     }
-    
+
     @Override
     public void setProperty(final String name, final String value) {
         super.setProperty(name, value);
         onConfigured();
     }
-    
+
     @Override
     public boolean removeProperty(String name) {
         final boolean removed = super.removeProperty(name);
-        if ( removed ) {
+        if (removed) {
             onConfigured();
         }
-        
+
         return removed;
     }
-    
+
     @SuppressWarnings("deprecation")
     private void onConfigured() {
         try (final NarCloseable x = NarCloseable.withNarLoader()) {
@@ -132,97 +131,97 @@ public class StandardControllerServiceNode extends AbstractConfiguredComponent i
             throw new ComponentLifeCycleException("Failed to invoke On-Configured Lifecycle methods of " + implementation, e);
         }
     }
-    
+
     @Override
     public void verifyCanDelete() {
-        if ( getState() != ControllerServiceState.DISABLED ) {
+        if (getState() != ControllerServiceState.DISABLED) {
             throw new IllegalStateException(implementation + " cannot be deleted because it is not disabled");
         }
     }
-    
+
     @Override
     public void verifyCanDisable() {
         verifyCanDisable(Collections.<ControllerServiceNode>emptySet());
     }
-    
+
     @Override
     public void verifyCanDisable(final Set<ControllerServiceNode> ignoreReferences) {
         final ControllerServiceState state = getState();
-        if ( state != ControllerServiceState.ENABLED && state != ControllerServiceState.ENABLING ) {
+        if (state != ControllerServiceState.ENABLED && state != ControllerServiceState.ENABLING) {
             throw new IllegalStateException("Cannot disable " + getControllerServiceImplementation() + " because it is not enabled");
         }
-        
+
         final ControllerServiceReference references = getReferences();
-        
-        for ( final ConfiguredComponent activeReference : references.getActiveReferences() ) {
-            if ( !ignoreReferences.contains(activeReference) ) {
+
+        for (final ConfiguredComponent activeReference : references.getActiveReferences()) {
+            if (!ignoreReferences.contains(activeReference)) {
                 throw new IllegalStateException(implementation + " cannot be disabled because it is referenced by at least one component that is currently running");
             }
         }
     }
-    
+
     @Override
     public void verifyCanEnable() {
-        if ( getState() != ControllerServiceState.DISABLED ) {
+        if (getState() != ControllerServiceState.DISABLED) {
             throw new IllegalStateException(implementation + " cannot be enabled because it is not disabled");
         }
-        
-        if ( !isValid() ) {
+
+        if (!isValid()) {
             throw new IllegalStateException(implementation + " cannot be enabled because it is not valid: " + getValidationErrors());
         }
     }
-    
+
     @Override
     public void verifyCanEnable(final Set<ControllerServiceNode> ignoredReferences) {
         if (getState() != ControllerServiceState.DISABLED) {
             throw new IllegalStateException(implementation + " cannot be enabled because it is not disabled");
         }
-        
+
         final Set<String> ids = new HashSet<>();
-        for ( final ControllerServiceNode node : ignoredReferences ) {
+        for (final ControllerServiceNode node : ignoredReferences) {
             ids.add(node.getIdentifier());
         }
-        
+
         final Collection<ValidationResult> validationResults = getValidationErrors(ids);
-        for ( final ValidationResult result : validationResults ) {
-            if ( !result.isValid() ) {
+        for (final ValidationResult result : validationResults) {
+            if (!result.isValid()) {
                 throw new IllegalStateException(implementation + " cannot be enabled because it is not valid: " + result);
             }
         }
     }
-    
+
     @Override
     public void verifyCanUpdate() {
-        if ( getState() != ControllerServiceState.DISABLED ) {
+        if (getState() != ControllerServiceState.DISABLED) {
             throw new IllegalStateException(implementation + " cannot be updated because it is not disabled");
         }
     }
-    
+
     @Override
     public String getComments() {
-    	readLock.lock();
-    	try {
-    		return comment;
-    	} finally {
-    		readLock.unlock();
-    	}
+        readLock.lock();
+        try {
+            return comment;
+        } finally {
+            readLock.unlock();
+        }
     }
-    
+
     @Override
     public void setComments(final String comment) {
-    	writeLock.lock();
-    	try {
-    		this.comment = comment;
-    	} finally {
-    		writeLock.unlock();
-    	}
+        writeLock.lock();
+        try {
+            this.comment = comment;
+        } finally {
+            writeLock.unlock();
+        }
     }
-    
+
     @Override
     public ControllerServiceState getState() {
         return stateRef.get();
     }
-    
+
     @Override
     public void setState(final ControllerServiceState state) {
         this.stateRef.set(state);


[05/11] incubator-nifi git commit: NIFI-271 checkpoint

Posted by jo...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardProcessorNode.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardProcessorNode.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardProcessorNode.java
index 355e303..eb7ec83 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardProcessorNode.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardProcessorNode.java
@@ -23,9 +23,6 @@ import org.apache.nifi.annotation.behavior.TriggerSerially;
 import org.apache.nifi.annotation.behavior.TriggerWhenAnyDestinationAvailable;
 import org.apache.nifi.annotation.behavior.TriggerWhenEmpty;
 import org.apache.nifi.annotation.documentation.CapabilityDescription;
-import org.apache.nifi.controller.ProcessScheduler;
-import org.apache.nifi.controller.ValidationContextFactory;
-import org.apache.nifi.controller.ProcessorNode;
 
 import static java.util.Objects.requireNonNull;
 
@@ -157,9 +154,11 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
         sideEffectFree = procClass.isAnnotationPresent(SideEffectFree.class) || procClass.isAnnotationPresent(org.apache.nifi.processor.annotation.SideEffectFree.class);
         batchSupported = procClass.isAnnotationPresent(SupportsBatching.class) || procClass.isAnnotationPresent(org.apache.nifi.processor.annotation.SupportsBatching.class);
         triggeredSerially = procClass.isAnnotationPresent(TriggerSerially.class) || procClass.isAnnotationPresent(org.apache.nifi.processor.annotation.TriggerSerially.class);
-        triggerWhenAnyDestinationAvailable = procClass.isAnnotationPresent(TriggerWhenAnyDestinationAvailable.class) || procClass.isAnnotationPresent(org.apache.nifi.processor.annotation.TriggerWhenAnyDestinationAvailable.class);
+        triggerWhenAnyDestinationAvailable = procClass.isAnnotationPresent(TriggerWhenAnyDestinationAvailable.class)
+                || procClass.isAnnotationPresent(org.apache.nifi.processor.annotation.TriggerWhenAnyDestinationAvailable.class);
         this.validationContextFactory = validationContextFactory;
-        eventDrivenSupported = (procClass.isAnnotationPresent(EventDriven.class) || procClass.isAnnotationPresent(org.apache.nifi.processor.annotation.EventDriven.class) )&& !triggeredSerially && !triggerWhenEmpty;
+        eventDrivenSupported = (procClass.isAnnotationPresent(EventDriven.class)
+                || procClass.isAnnotationPresent(org.apache.nifi.processor.annotation.EventDriven.class)) && !triggeredSerially && !triggerWhenEmpty;
         schedulingStrategy = SchedulingStrategy.TIMER_DRIVEN;
     }
 
@@ -175,7 +174,7 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
      * Provides and opportunity to retain information about this particular
      * processor instance
      *
-     * @param comments
+     * @param comments new comments
      */
     @Override
     public void setComments(final String comments) {
@@ -205,10 +204,12 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
         this.position.set(position);
     }
 
+    @Override
     public Map<String, String> getStyle() {
         return style.get();
     }
 
+    @Override
     public void setStyle(final Map<String, String> style) {
         if (style != null) {
             this.style.set(Collections.unmodifiableMap(new HashMap<>(style)));
@@ -229,9 +230,7 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
         return lossTolerant.get();
     }
 
-    /**
-     * @return if true processor runs only on the primary node
-     */
+    @Override
     public boolean isIsolated() {
         return isolated.get();
     }
@@ -249,6 +248,7 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
      * @return true if the processor has the {@link SideEffectFree} annotation,
      * false otherwise.
      */
+    @Override
     public boolean isSideEffectFree() {
         return sideEffectFree;
     }
@@ -262,6 +262,7 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
      * @return true if the processor has the
      * {@link TriggerWhenAnyDestinationAvailable} annotation, false otherwise.
      */
+    @Override
     public boolean isTriggerWhenAnyDestinationAvailable() {
         return triggerWhenAnyDestinationAvailable;
     }
@@ -270,7 +271,7 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
      * Indicates whether flow file content made by this processor must be
      * persisted
      *
-     * @param lossTolerant
+     * @param lossTolerant tolerant
      */
     @Override
     public void setLossTolerant(final boolean lossTolerant) {
@@ -288,7 +289,7 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
     /**
      * Indicates whether the processor runs on only the primary node.
      *
-     * @param isolated
+     * @param isolated isolated
      */
     public void setIsolated(final boolean isolated) {
         writeLock.lock();
@@ -311,12 +312,6 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
         return terminatable.contains(relationship);
     }
 
-    /**
-     * Indicates whether flow files transferred to undefined relationships
-     * should be terminated
-     *
-     * @param terminate
-     */
     @Override
     public void setAutoTerminatedRelationships(final Set<Relationship> terminate) {
         writeLock.lock();
@@ -340,6 +335,7 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
      * @return an unmodifiable Set that contains all of the
      * ProcessorRelationship objects that are configured to be auto-terminated
      */
+    @Override
     public Set<Relationship> getAutoTerminatedRelationships() {
         Set<Relationship> relationships = undefinedRelationshipsToTerminate.get();
         if (relationships == null) {
@@ -361,16 +357,16 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
     public String getProcessorDescription() {
         CapabilityDescription capDesc = processor.getClass().getAnnotation(CapabilityDescription.class);
         String description = null;
-        if ( capDesc != null ) {
+        if (capDesc != null) {
             description = capDesc.value();
         } else {
-            final org.apache.nifi.processor.annotation.CapabilityDescription deprecatedCapDesc = 
-                    processor.getClass().getAnnotation(org.apache.nifi.processor.annotation.CapabilityDescription.class);
-            if ( deprecatedCapDesc != null ) {
+            final org.apache.nifi.processor.annotation.CapabilityDescription deprecatedCapDesc
+                    = processor.getClass().getAnnotation(org.apache.nifi.processor.annotation.CapabilityDescription.class);
+            if (deprecatedCapDesc != null) {
                 description = deprecatedCapDesc.value();
             }
         }
-        
+
         return description;
     }
 
@@ -399,6 +395,7 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
         return timeUnit.convert(schedulingNanos.get(), TimeUnit.NANOSECONDS);
     }
 
+    @Override
     public boolean isEventDrivenSupported() {
         readLock.lock();
         try {
@@ -411,11 +408,12 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
     /**
      * Updates the Scheduling Strategy used for this Processor
      *
-     * @param schedulingStrategy
+     * @param schedulingStrategy strategy
      *
      * @throws IllegalArgumentException if the SchedulingStrategy is not not
      * applicable for this Processor
      */
+    @Override
     public void setSchedulingStrategy(final SchedulingStrategy schedulingStrategy) {
         writeLock.lock();
         try {
@@ -434,10 +432,9 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
     }
 
     /**
-     * Returns the currently configured scheduling strategy
-     *
-     * @return
+     * @return the currently configured scheduling strategy
      */
+    @Override
     public SchedulingStrategy getSchedulingStrategy() {
         readLock.lock();
         try {
@@ -452,12 +449,6 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
         return schedulingPeriod.get();
     }
 
-    /**
-     * @param value the number of <code>timeUnit</code>s between scheduling
-     * intervals.
-     * @param timeUnit determines the unit of time to represent the scheduling
-     * period.
-     */
     @Override
     public void setScheduldingPeriod(final String schedulingPeriod) {
         writeLock.lock();
@@ -519,28 +510,16 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
         }
     }
 
-    /**
-     * @param timeUnit determines the unit of time to represent the yield
-     * period. If null will be reported in units of
-     * {@link #DEFAULT_SCHEDULING_TIME_UNIT}.
-     * @return
-     */
     @Override
     public long getYieldPeriod(final TimeUnit timeUnit) {
         return FormatUtils.getTimeDuration(getYieldPeriod(), timeUnit == null ? DEFAULT_TIME_UNIT : timeUnit);
     }
 
+    @Override
     public String getYieldPeriod() {
         return yieldPeriod.get();
     }
 
-    /**
-     * Updates the amount of time that this processor should avoid being
-     * scheduled when the processor calls
-     * {@link nifi.processor.ProcessContext#yield() ProcessContext.yield()}
-     *
-     * @param yieldPeriod
-     */
     @Override
     public void setYieldPeriod(final String yieldPeriod) {
         writeLock.lock();
@@ -573,6 +552,7 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
         LoggerFactory.getLogger(processor.getClass()).debug("{} has chosen to yield its resources; will not be scheduled to run again for {}", processor, yieldDuration);
     }
 
+    @Override
     public void yield(final long period, final TimeUnit timeUnit) {
         final long yieldMillis = TimeUnit.MILLISECONDS.convert(period, timeUnit);
         yieldExpiration.set(Math.max(yieldExpiration.get(), System.currentTimeMillis() + yieldMillis));
@@ -642,6 +622,7 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
         }
     }
 
+    @Override
     public boolean isTriggeredSerially() {
         return triggeredSerially;
     }
@@ -655,10 +636,12 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
         return concurrentTaskCount.get();
     }
 
+    @Override
     public LogLevel getBulletinLevel() {
         return LogRepositoryFactory.getRepository(getIdentifier()).getObservationLevel(BULLETIN_OBSERVER_ID);
     }
 
+    @Override
     public void setBulletinLevel(final LogLevel level) {
         LogRepositoryFactory.getRepository(getIdentifier()).setObservationLevel(BULLETIN_OBSERVER_ID, level);
     }
@@ -778,7 +761,8 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
                             // if we are running and we do not terminate undefined relationships and this is the only
                             // connection that defines the given relationship, and that relationship is required,
                             // then it is not legal to remove this relationship from this connection.
-                            throw new IllegalStateException("Cannot remove relationship " + rel.getName() + " from Connection because doing so would invalidate Processor " + this + ", which is currently running");
+                            throw new IllegalStateException("Cannot remove relationship " + rel.getName() + " from Connection because doing so would invalidate Processor "
+                                    + this + ", which is currently running");
                         }
                     }
                 }
@@ -872,11 +856,9 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
     }
 
     /**
-     * Gets the relationship for this nodes processor for the given name or
-     * creates a new relationship for the given name.
-     *
-     * @param relationshipName
-     * @return
+     * @param relationshipName name
+     * @return the relationship for this nodes processor for the given name or
+     * creates a new relationship for the given name
      */
     @Override
     public Relationship getRelationship(final String relationshipName) {
@@ -897,15 +879,14 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
         return returnRel;
     }
 
+    @Override
     public Processor getProcessor() {
         return this.processor;
     }
 
     /**
-     * Obtains the Set of destination processors for all relationships excluding
+     * @return the Set of destination processors for all relationships excluding
      * any destinations that are this processor itself (self-loops)
-     *
-     * @return
      */
     public Set<Connectable> getDestinations() {
         final Set<Connectable> nonSelfDestinations = new HashSet<>();
@@ -965,7 +946,7 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
     /**
      * Determines if the given node is a destination for this node
      *
-     * @param node
+     * @param node node
      * @return true if is a direct destination node; false otherwise
      */
     boolean isRelated(final ProcessorNode node) {
@@ -986,7 +967,7 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
             readLock.unlock();
         }
     }
-    
+
     @Override
     public int getActiveThreadCount() {
         readLock.lock();
@@ -1067,8 +1048,8 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
     /**
      * Establishes node equality (based on the processor's identifier)
      *
-     * @param other
-     * @return
+     * @param other node
+     * @return true if equal
      */
     @Override
     public boolean equals(final Object other) {
@@ -1125,6 +1106,7 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
         return ConnectableType.PROCESSOR;
     }
 
+    @Override
     public void setScheduledState(final ScheduledState scheduledState) {
         this.scheduledState.set(scheduledState);
         if (!scheduledState.equals(ScheduledState.RUNNING)) {   // if user stops processor, clear yield expiration
@@ -1210,7 +1192,7 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
             readLock.unlock();
         }
     }
-    
+
     @Override
     public void verifyCanStart(final Set<ControllerServiceNode> ignoredReferences) {
         switch (getScheduledState()) {
@@ -1222,15 +1204,15 @@ public class StandardProcessorNode extends ProcessorNode implements Connectable
                 break;
         }
         verifyNoActiveThreads();
-        
+
         final Set<String> ids = new HashSet<>();
-        for ( final ControllerServiceNode node : ignoredReferences ) {
+        for (final ControllerServiceNode node : ignoredReferences) {
             ids.add(node.getIdentifier());
         }
-        
+
         final Collection<ValidationResult> validationResults = getValidationErrors(ids);
-        for ( final ValidationResult result : validationResults ) {
-            if ( !result.isValid() ) {
+        for (final ValidationResult result : validationResults) {
+            if (!result.isValid()) {
                 throw new IllegalStateException(this + " cannot be started because it is not valid: " + result);
             }
         }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardSnippet.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardSnippet.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardSnippet.java
index 2c9d85e..9206054 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardSnippet.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardSnippet.java
@@ -33,20 +33,16 @@ public class StandardSnippet implements Snippet {
     private String parentGroupId;
     private Boolean linked;
 
-    private Set<String> processGroups = new HashSet<>();
-    private Set<String> remoteProcessGroups = new HashSet<>();
-    private Set<String> processors = new HashSet<>();
-    private Set<String> inputPorts = new HashSet<>();
-    private Set<String> outputPorts = new HashSet<>();
-    private Set<String> connections = new HashSet<>();
-    private Set<String> labels = new HashSet<>();
-    private Set<String> funnels = new HashSet<>();
-
-    /**
-     * The id of this snippet.
-     *
-     * @return
-     */
+    private final Set<String> processGroups = new HashSet<>();
+    private final Set<String> remoteProcessGroups = new HashSet<>();
+    private final Set<String> processors = new HashSet<>();
+    private final Set<String> inputPorts = new HashSet<>();
+    private final Set<String> outputPorts = new HashSet<>();
+    private final Set<String> connections = new HashSet<>();
+    private final Set<String> labels = new HashSet<>();
+    private final Set<String> funnels = new HashSet<>();
+
+    @Override
     public String getId() {
         return id;
     }
@@ -55,11 +51,7 @@ public class StandardSnippet implements Snippet {
         this.id = id;
     }
 
-    /**
-     * Whether or not this snippet is linked to the data flow.
-     *
-     * @return
-     */
+    @Override
     public boolean isLinked() {
         if (linked == null) {
             return false;
@@ -72,11 +64,7 @@ public class StandardSnippet implements Snippet {
         this.linked = linked;
     }
 
-    /**
-     * The parent group id of the components in this snippet.
-     *
-     * @return
-     */
+    @Override
     public String getParentGroupId() {
         return parentGroupId;
     }
@@ -85,11 +73,7 @@ public class StandardSnippet implements Snippet {
         this.parentGroupId = parentGroupId;
     }
 
-    /**
-     * The connections in this snippet.
-     *
-     * @return
-     */
+    @Override
     public Set<String> getConnections() {
         return Collections.unmodifiableSet(connections);
     }
@@ -98,11 +82,7 @@ public class StandardSnippet implements Snippet {
         connections.addAll(ids);
     }
 
-    /**
-     * The funnels in this snippet.
-     *
-     * @return
-     */
+    @Override
     public Set<String> getFunnels() {
         return Collections.unmodifiableSet(funnels);
     }
@@ -111,11 +91,7 @@ public class StandardSnippet implements Snippet {
         funnels.addAll(ids);
     }
 
-    /**
-     * The input ports in this snippet.
-     *
-     * @return
-     */
+    @Override
     public Set<String> getInputPorts() {
         return Collections.unmodifiableSet(inputPorts);
     }
@@ -124,11 +100,7 @@ public class StandardSnippet implements Snippet {
         inputPorts.addAll(ids);
     }
 
-    /**
-     * The output ports in this snippet.
-     *
-     * @return
-     */
+    @Override
     public Set<String> getOutputPorts() {
         return Collections.unmodifiableSet(outputPorts);
     }
@@ -137,11 +109,7 @@ public class StandardSnippet implements Snippet {
         outputPorts.addAll(ids);
     }
 
-    /**
-     * The labels in this snippet.
-     *
-     * @return
-     */
+    @Override
     public Set<String> getLabels() {
         return Collections.unmodifiableSet(labels);
     }
@@ -150,6 +118,7 @@ public class StandardSnippet implements Snippet {
         labels.addAll(ids);
     }
 
+    @Override
     public Set<String> getProcessGroups() {
         return Collections.unmodifiableSet(processGroups);
     }
@@ -158,6 +127,7 @@ public class StandardSnippet implements Snippet {
         processGroups.addAll(ids);
     }
 
+    @Override
     public Set<String> getProcessors() {
         return Collections.unmodifiableSet(processors);
     }
@@ -166,6 +136,7 @@ public class StandardSnippet implements Snippet {
         processors.addAll(ids);
     }
 
+    @Override
     public Set<String> getRemoteProcessGroups() {
         return Collections.unmodifiableSet(remoteProcessGroups);
     }
@@ -174,11 +145,7 @@ public class StandardSnippet implements Snippet {
         remoteProcessGroups.addAll(ids);
     }
 
-    /**
-     * Determines if this snippet is empty.
-     *
-     * @return
-     */
+    @Override
     public boolean isEmpty() {
         return processors.isEmpty() && processGroups.isEmpty() && remoteProcessGroups.isEmpty() && labels.isEmpty()
                 && inputPorts.isEmpty() && outputPorts.isEmpty() && connections.isEmpty() && funnels.isEmpty();

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/Template.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/Template.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/Template.java
index 26c4cd2..c2e8e04 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/Template.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/Template.java
@@ -29,7 +29,7 @@ public class Template {
     /**
      * Returns a TemplateDTO object that describes the contents of this Template
      *
-     * @return
+     * @return template dto
      */
     public TemplateDTO getDetails() {
         return dto;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/TemplateManager.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/TemplateManager.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/TemplateManager.java
index 30d4365..6a11a33 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/TemplateManager.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/TemplateManager.java
@@ -103,7 +103,7 @@ public class TemplateManager {
      * snippet of this flow. Any sensitive properties in the TemplateDTO will be
      * removed.
      *
-     * @param dto
+     * @param dto dto
      * @return a copy of the given DTO
      * @throws IOException if an I/O error occurs when persisting the Template
      * @throws NullPointerException if the DTO is null
@@ -144,6 +144,8 @@ public class TemplateManager {
 
     /**
      * Clears all Templates from the TemplateManager
+     *
+     * @throws java.io.IOException ioe
      */
     public void clear() throws IOException {
         writeLock.lock();
@@ -175,10 +177,8 @@ public class TemplateManager {
     }
 
     /**
-     * Returns the template with the given id, if it exists; else, returns null
-     *
-     * @param id
-     * @return
+     * @param id template id
+     * @return the template with the given id, if it exists; else, returns null
      */
     public Template getTemplate(final String id) {
         readLock.lock();
@@ -192,7 +192,7 @@ public class TemplateManager {
     /**
      * Loads the templates from disk
      *
-     * @throws IOException
+     * @throws IOException ioe
      */
     public void loadTemplates() throws IOException {
         writeLock.lock();
@@ -237,8 +237,8 @@ public class TemplateManager {
     /**
      * Persists the given template to disk
      *
-     * @param dto
-     * @throws IOException
+     * @param template template
+     * @throws IOException ioe
      */
     private void persistTemplate(final Template template) throws IOException {
         final Path path = directory.resolve(template.getDetails().getId() + ".template");
@@ -249,7 +249,7 @@ public class TemplateManager {
      * Scrubs the template prior to persisting in order to remove fields that
      * shouldn't be included or are unnecessary.
      *
-     * @param snippet
+     * @param snippet snippet
      */
     private void scrubTemplate(final FlowSnippetDTO snippet) {
         // ensure that contents have been specified
@@ -273,7 +273,7 @@ public class TemplateManager {
             if (snippet.getProcessGroups() != null) {
                 scrubProcessGroups(snippet.getProcessGroups());
             }
-            
+
             // go through each controller service if specified
             if (snippet.getControllerServices() != null) {
                 scrubControllerServices(snippet.getControllerServices());
@@ -284,7 +284,7 @@ public class TemplateManager {
     /**
      * Scrubs process groups prior to saving.
      *
-     * @param processGroups
+     * @param processGroups groups
      */
     private void scrubProcessGroups(final Set<ProcessGroupDTO> processGroups) {
         // go through each process group
@@ -297,7 +297,7 @@ public class TemplateManager {
      * Scrubs processors prior to saving. This includes removing sensitive
      * properties, validation errors, property descriptors, etc.
      *
-     * @param snippet
+     * @param processors procs
      */
     private void scrubProcessors(final Set<ProcessorDTO> processors) {
         // go through each processor
@@ -328,20 +328,20 @@ public class TemplateManager {
             processorDTO.setValidationErrors(null);
         }
     }
-    
+
     private void scrubControllerServices(final Set<ControllerServiceDTO> controllerServices) {
-        for ( final ControllerServiceDTO serviceDTO : controllerServices ) {
+        for (final ControllerServiceDTO serviceDTO : controllerServices) {
             final Map<String, String> properties = serviceDTO.getProperties();
             final Map<String, PropertyDescriptorDTO> descriptors = serviceDTO.getDescriptors();
-            
-            if ( properties != null && descriptors != null ) {
-                for ( final PropertyDescriptorDTO descriptor : descriptors.values() ) {
-                    if ( descriptor.isSensitive() ) {
+
+            if (properties != null && descriptors != null) {
+                for (final PropertyDescriptorDTO descriptor : descriptors.values()) {
+                    if (descriptor.isSensitive()) {
                         properties.put(descriptor.getName(), null);
                     }
                 }
             }
-            
+
             serviceDTO.setCustomUiUrl(null);
             serviceDTO.setValidationErrors(null);
         }
@@ -351,7 +351,7 @@ public class TemplateManager {
      * Scrubs connections prior to saving. This includes removing available
      * relationships.
      *
-     * @param snippet
+     * @param connections conns
      */
     private void scrubConnections(final Set<ConnectionDTO> connections) {
         // go through each connection
@@ -366,7 +366,7 @@ public class TemplateManager {
     /**
      * Remove unnecessary fields in connectables prior to saving.
      *
-     * @param connectable
+     * @param connectable connectable
      */
     private void scrubConnectable(final ConnectableDTO connectable) {
         if (connectable != null) {
@@ -381,7 +381,7 @@ public class TemplateManager {
     /**
      * Remove unnecessary fields in remote groups prior to saving.
      *
-     * @param remoteGroups
+     * @param remoteGroups groups
      */
     private void scrubRemoteProcessGroups(final Set<RemoteProcessGroupDTO> remoteGroups) {
         // go through each remote process group
@@ -411,7 +411,7 @@ public class TemplateManager {
     /**
      * Remove unnecessary fields in remote ports prior to saving.
      *
-     * @param remotePorts
+     * @param remotePorts ports
      */
     private void scrubRemotePorts(final Set<RemoteProcessGroupPortDTO> remotePorts) {
         for (final Iterator<RemoteProcessGroupPortDTO> remotePortIter = remotePorts.iterator(); remotePortIter.hasNext();) {
@@ -455,7 +455,7 @@ public class TemplateManager {
                 } catch (final IOException e) {
                     logger.error(String.format("Unable to remove template file for template %s.", id));
 
-                    // since the template file existed and we were unable to remove it, rollback 
+                    // since the template file existed and we were unable to remove it, rollback
                     // by returning it to the template map
                     templateMap.put(id, removed);
 

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/reporting/AbstractReportingTaskNode.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/reporting/AbstractReportingTaskNode.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/reporting/AbstractReportingTaskNode.java
index 18d2c5f..7adab68 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/reporting/AbstractReportingTaskNode.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/reporting/AbstractReportingTaskNode.java
@@ -49,10 +49,10 @@ public abstract class AbstractReportingTaskNode extends AbstractConfiguredCompon
 
     private final AtomicReference<SchedulingStrategy> schedulingStrategy = new AtomicReference<>(SchedulingStrategy.TIMER_DRIVEN);
     private final AtomicReference<String> schedulingPeriod = new AtomicReference<>("5 mins");
-    
+
     private volatile String comment;
     private volatile ScheduledState scheduledState = ScheduledState.STOPPED;
-    
+
     public AbstractReportingTaskNode(final ReportingTask reportingTask, final String id,
             final ControllerServiceProvider controllerServiceProvider, final ProcessScheduler processScheduler,
             final ValidationContextFactory validationContextFactory) {
@@ -96,7 +96,7 @@ public abstract class AbstractReportingTaskNode extends AbstractConfiguredCompon
     public boolean isRunning() {
         return processScheduler.isScheduled(this) || processScheduler.getActiveThreadCount(this) > 0;
     }
-    
+
     @Override
     public int getActiveThreadCount() {
         return processScheduler.getActiveThreadCount(this);
@@ -118,31 +118,31 @@ public abstract class AbstractReportingTaskNode extends AbstractConfiguredCompon
     public ScheduledState getScheduledState() {
         return scheduledState;
     }
-    
+
     @Override
     public void setScheduledState(final ScheduledState state) {
         this.scheduledState = state;
     }
-    
+
     @Override
     public void setProperty(final String name, final String value) {
         super.setProperty(name, value);
-        
+
         onConfigured();
     }
-    
+
     @Override
     public boolean removeProperty(String name) {
         final boolean removed = super.removeProperty(name);
-        if ( removed ) {
+        if (removed) {
             onConfigured();
         }
-        
+
         return removed;
     }
-    
+
     @SuppressWarnings("deprecation")
-	private void onConfigured() {
+    private void onConfigured() {
         // We need to invoke any method annotation with the OnConfigured annotation in order to
         // maintain backward compatibility. This will be removed when we remove the old, deprecated annotations.
         try (final NarCloseable x = NarCloseable.withNarLoader()) {
@@ -152,72 +152,71 @@ public abstract class AbstractReportingTaskNode extends AbstractConfiguredCompon
             throw new ComponentLifeCycleException("Failed to invoke On-Configured Lifecycle methods of " + reportingTask, e);
         }
     }
-    
+
     public boolean isDisabled() {
         return scheduledState == ScheduledState.DISABLED;
     }
-    
+
     @Override
     public String getComments() {
-		return comment;
-	}
+        return comment;
+    }
 
     @Override
-	public void setComments(final String comment) {
-		this.comment = comment;
-	}
+    public void setComments(final String comment) {
+        this.comment = comment;
+    }
 
-	@Override
+    @Override
     public void verifyCanDelete() {
         if (isRunning()) {
             throw new IllegalStateException("Cannot delete " + reportingTask + " because it is currently running");
         }
     }
-    
+
     @Override
     public void verifyCanDisable() {
-        if ( isRunning() ) {
+        if (isRunning()) {
             throw new IllegalStateException("Cannot disable " + reportingTask + " because it is currently running");
         }
-        
-        if ( isDisabled() ) {
+
+        if (isDisabled()) {
             throw new IllegalStateException("Cannot disable " + reportingTask + " because it is already disabled");
         }
     }
-    
-    
+
     @Override
     public void verifyCanEnable() {
-        if ( !isDisabled() ) {
+        if (!isDisabled()) {
             throw new IllegalStateException("Cannot enable " + reportingTask + " because it is not disabled");
         }
     }
-    
+
     @Override
     public void verifyCanStart() {
-        if ( isDisabled() ) {
+        if (isDisabled()) {
             throw new IllegalStateException("Cannot start " + reportingTask + " because it is currently disabled");
         }
-        
-        if ( isRunning() ) {
+
+        if (isRunning()) {
             throw new IllegalStateException("Cannot start " + reportingTask + " because it is already running");
         }
     }
-    
+
     @Override
     public void verifyCanStop() {
-        if ( !isRunning() ) {
+        if (!isRunning()) {
             throw new IllegalStateException("Cannot stop " + reportingTask + " because it is not running");
         }
     }
-    
+
     @Override
     public void verifyCanUpdate() {
-        if ( isRunning() ) {
+        if (isRunning()) {
             throw new IllegalStateException("Cannot update " + reportingTask + " because it is currently running");
         }
     }
-    
+
     @Override
     public void verifyCanStart(final Set<ControllerServiceNode> ignoredReferences) {
         switch (getScheduledState()) {
@@ -229,24 +228,23 @@ public abstract class AbstractReportingTaskNode extends AbstractConfiguredCompon
                 break;
         }
         final int activeThreadCount = getActiveThreadCount();
-        if ( activeThreadCount > 0 ) {
+        if (activeThreadCount > 0) {
             throw new IllegalStateException(this + " cannot be started because it has " + activeThreadCount + " active threads already");
         }
-        
+
         final Set<String> ids = new HashSet<>();
-        for ( final ControllerServiceNode node : ignoredReferences ) {
+        for (final ControllerServiceNode node : ignoredReferences) {
             ids.add(node.getIdentifier());
         }
-        
+
         final Collection<ValidationResult> validationResults = getValidationErrors(ids);
-        for ( final ValidationResult result : validationResults ) {
-            if ( !result.isValid() ) {
+        for (final ValidationResult result : validationResults) {
+            if (!result.isValid()) {
                 throw new IllegalStateException(this + " cannot be started because it is not valid: " + result);
             }
         }
     }
-    
-    
+
     @Override
     public String toString() {
         return "ReportingTask[id=" + getIdentifier() + ", name=" + getName() + "]";

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/reporting/StandardReportingContext.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/reporting/StandardReportingContext.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/reporting/StandardReportingContext.java
index 3d57533..2536d6f 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/reporting/StandardReportingContext.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/reporting/StandardReportingContext.java
@@ -124,7 +124,7 @@ public class StandardReportingContext implements ReportingContext, ControllerSer
     public boolean isControllerServiceEnabled(final String serviceIdentifier) {
         return serviceProvider.isControllerServiceEnabled(serviceIdentifier);
     }
-    
+
     @Override
     public boolean isControllerServiceEnabling(final String serviceIdentifier) {
         return serviceProvider.isControllerServiceEnabling(serviceIdentifier);
@@ -135,9 +135,9 @@ public class StandardReportingContext implements ReportingContext, ControllerSer
         return this;
     }
 
-	@Override
-	public String getControllerServiceName(final String serviceIdentifier) {
-		return serviceProvider.getControllerServiceName(serviceIdentifier);
-	}
-    
+    @Override
+    public String getControllerServiceName(final String serviceIdentifier) {
+        return serviceProvider.getControllerServiceName(serviceIdentifier);
+    }
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/reporting/StandardReportingInitializationContext.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/reporting/StandardReportingInitializationContext.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/reporting/StandardReportingInitializationContext.java
index 435dbd0..0131a95 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/reporting/StandardReportingInitializationContext.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/reporting/StandardReportingInitializationContext.java
@@ -35,8 +35,8 @@ public class StandardReportingInitializationContext implements ReportingInitiali
     private final SchedulingStrategy schedulingStrategy;
     private final ControllerServiceProvider serviceProvider;
     private final ComponentLog logger;
-    
-    public StandardReportingInitializationContext(final String id, final String name, final SchedulingStrategy schedulingStrategy, 
+
+    public StandardReportingInitializationContext(final String id, final String name, final SchedulingStrategy schedulingStrategy,
             final String schedulingPeriod, final ComponentLog logger, final ControllerServiceProvider serviceProvider) {
         this.id = id;
         this.name = name;
@@ -97,17 +97,17 @@ public class StandardReportingInitializationContext implements ReportingInitiali
     public boolean isControllerServiceEnabling(final String serviceIdentifier) {
         return serviceProvider.isControllerServiceEnabling(serviceIdentifier);
     }
-    
+
     @Override
     public ControllerServiceLookup getControllerServiceLookup() {
         return this;
     }
-    
+
     @Override
     public String getControllerServiceName(final String serviceIdentifier) {
-    	return serviceProvider.getControllerServiceName(serviceIdentifier);
+        return serviceProvider.getControllerServiceName(serviceIdentifier);
     }
-    
+
     @Override
     public ComponentLog getLogger() {
         return logger;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/FileSystemRepository.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/FileSystemRepository.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/FileSystemRepository.java
index 2c3751b..d69b417 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/FileSystemRepository.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/FileSystemRepository.java
@@ -79,7 +79,6 @@ import org.slf4j.LoggerFactory;
 /**
  * Is thread safe
  *
- * @author none
  */
 public class FileSystemRepository implements ContentRepository {
 
@@ -102,7 +101,7 @@ public class FileSystemRepository implements ContentRepository {
     private final boolean alwaysSync;
     private final ScheduledExecutorService containerCleanupExecutor;
 
-    private ContentClaimManager contentClaimManager;	// effectively final
+    private ContentClaimManager contentClaimManager; // effectively final
 
     // Map of contianer to archived files that should be deleted next.
     private final Map<String, BlockingQueue<ArchiveInfo>> archivedFiles = new HashMap<>();
@@ -137,7 +136,8 @@ public class FileSystemRepository implements ContentRepository {
             archiveData = true;
 
             if (maxArchiveSize == null) {
-                throw new RuntimeException("No value specified for property '" + NiFiProperties.CONTENT_ARCHIVE_MAX_USAGE_PERCENTAGE + "' but archiving is enabled. You must configure the max disk usage in order to enable archiving.");
+                throw new RuntimeException("No value specified for property '"
+                        + NiFiProperties.CONTENT_ARCHIVE_MAX_USAGE_PERCENTAGE + "' but archiving is enabled. You must configure the max disk usage in order to enable archiving.");
             }
 
             if (!MAX_ARCHIVE_SIZE_PATTERN.matcher(maxArchiveSize.trim()).matches()) {
@@ -228,7 +228,7 @@ public class FileSystemRepository implements ContentRepository {
         executor.shutdown();
         containerCleanupExecutor.shutdown();
     }
-    
+
     private static double getRatio(final String value) {
         final String trimmed = value.trim();
         final String percentage = trimmed.substring(0, trimmed.length() - 1);
@@ -241,7 +241,7 @@ public class FileSystemRepository implements ContentRepository {
         final List<Future<Long>> futures = new ArrayList<>();
 
         // Run through each of the containers. For each container, create the sections if necessary.
-        // Then, we need to scan through the archived data so that we can determine what the oldest 
+        // Then, we need to scan through the archived data so that we can determine what the oldest
         // archived data is, so that we know when we have to start aging data off.
         for (final Map.Entry<String, Path> container : containers.entrySet()) {
             final String containerName = container.getKey();
@@ -263,7 +263,7 @@ public class FileSystemRepository implements ContentRepository {
             realPathMap.put(containerName, realPath);
 
             // We need to scan the archive directories to find out the oldest timestamp so that know whether or not we
-            // will have to delete archived data based on time threshold. Scanning all of the directories can be very 
+            // will have to delete archived data based on time threshold. Scanning all of the directories can be very
             // expensive because of all of the disk accesses. So we do this in multiple threads. Since containers are
             // often unique to a disk, we just map 1 thread to each container.
             final Callable<Long> scanContainer = new Callable<Long>() {
@@ -765,7 +765,7 @@ public class FileSystemRepository implements ContentRepository {
                 throw new RepositoryPurgeException("File " + path.toFile().getAbsolutePath() + " does not exist");
             }
 
-            // Try up to 10 times to see if the directory is writable, in case another process (like a 
+            // Try up to 10 times to see if the directory is writable, in case another process (like a
             // virus scanner) has the directory temporarily locked
             boolean writable = false;
             for (int i = 0; i < 10; i++) {
@@ -803,17 +803,18 @@ public class FileSystemRepository implements ContentRepository {
                     if (toDestroy.isEmpty()) {
                         return;
                     }
-    
+
                     for (final ContentClaim claim : toDestroy) {
                         final String container = claim.getContainer();
                         final BlockingQueue<ContentClaim> claimQueue = reclaimable.get(container);
-    
+
                         try {
                             while (true) {
                                 if (claimQueue.offer(claim, 10, TimeUnit.MINUTES)) {
                                     break;
                                 } else {
-                                    LOG.warn("Failed to clean up {} because old claims aren't being cleaned up fast enough. This Content Claim will remain in the Content Repository until NiFi is restarted, at which point it will be cleaned up", claim);
+                                    LOG.warn("Failed to clean up {} because old claims aren't being cleaned up fast enough. "
+                                            + "This Content Claim will remain in the Content Repository until NiFi is restarted, at which point it will be cleaned up", claim);
                                 }
                             }
                         } catch (final InterruptedException ie) {
@@ -971,7 +972,8 @@ public class FileSystemRepository implements ContentRepository {
 
                     // Otherwise, we're done. Return the last mod time of the oldest file in the container's archive.
                     final long millis = TimeUnit.NANOSECONDS.toMillis(System.nanoTime() - startNanos);
-                    LOG.info("Deleted {} files from archive for Container {}; oldest Archive Date is now {}; container cleanup took {} millis", deleteCount, containerName, new Date(oldestArchiveDate), millis);
+                    LOG.info("Deleted {} files from archive for Container {}; oldest Archive Date is now {}; container cleanup took {} millis",
+                            deleteCount, containerName, new Date(oldestArchiveDate), millis);
 
                     return oldestArchiveDate;
                 }
@@ -1005,7 +1007,8 @@ public class FileSystemRepository implements ContentRepository {
                             try {
                                 Files.deleteIfExists(file);
                                 containerState.decrementArchiveCount();
-                                LOG.debug("Deleted archived ContentClaim with ID {} from Container {} because it was older than the configured max archival duration", file.toFile().getName(), containerName);
+                                LOG.debug("Deleted archived ContentClaim with ID {} from Container {} because it was older than the configured max archival duration",
+                                        file.toFile().getName(), containerName);
                             } catch (final IOException ioe) {
                                 LOG.warn("Failed to remove archived ContentClaim with ID {} from Container {} due to {}", file.toFile().getName(), containerName, ioe.toString());
                                 if (LOG.isDebugEnabled()) {
@@ -1208,7 +1211,7 @@ public class FileSystemRepository implements ContentRepository {
                     if (minRequiredSpace == null) {
                         return;
                     }
-    
+
                     try {
                         final long usableSpace = getContainerUsableSpace(containerName);
                         if (usableSpace > minRequiredSpace) {
@@ -1277,11 +1280,9 @@ public class FileSystemRepository implements ContentRepository {
         }
 
         /**
-         * Returns {@code true} if wait is required to create claims against
+         * @return {@code true} if wait is required to create claims against
          * this Container, based on whether or not the container has reached its
-         * back pressure threshold.
-         *
-         * @return
+         * back pressure threshold
          */
         public boolean isWaitRequired() {
             if (!archiveEnabled) {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/ProcessContext.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/ProcessContext.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/ProcessContext.java
index 7434efe..7502641 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/ProcessContext.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/ProcessContext.java
@@ -65,8 +65,8 @@ public class ProcessContext {
 
     /**
      *
-     * @param relatonship
-     * @return
+     * @param relationship relationship
+     * @return connections for relationship
      */
     Collection<Connection> getConnections(final Relationship relationship) {
         Collection<Connection> collection = connectable.getConnections(relationship);
@@ -106,15 +106,13 @@ public class ProcessContext {
     }
 
     /**
-     * Returns true if we are allowed to take FlowFiles only from self-loops.
+     * @return true if we are allowed to take FlowFiles only from self-loops.
      * This is the case when no Relationships are available except for
      * self-looping Connections
-     *
-     * @return
      */
     private boolean pollFromSelfLoopsOnly() {
         if (isTriggerWhenAnyDestinationAvailable()) {
-            // we can pull from any incoming connection, as long as at least one downstream connection 
+            // we can pull from any incoming connection, as long as at least one downstream connection
             // is available for each relationship.
             // I.e., we can poll only from self if no relationships are available
             return !Connectables.anyRelationshipAvailable(connectable);
@@ -219,15 +217,14 @@ public class ProcessContext {
     }
 
     /**
-     * Checks if at least <code>requiredNumber</code> of Relationationships are
-     * "available." If so, returns <code>true</code>, otherwise returns
-     * <code>false</code>.
-     *
      * A Relationship is said to be Available if and only if all Connections for
      * that Relationship are either self-loops or have non-full queues.
      *
-     * @param requiredNumber
-     * @return
+     * @param requiredNumber minimum number of relationships that must have
+     * availability
+     * @return Checks if at least <code>requiredNumber</code> of
+     * Relationationships are "available." If so, returns <code>true</code>,
+     * otherwise returns <code>false</code>
      */
     public boolean isRelationshipAvailabilitySatisfied(final int requiredNumber) {
         int unavailable = 0;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/ProvenanceEventEnricher.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/ProvenanceEventEnricher.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/ProvenanceEventEnricher.java
index ae73bda..db098fc 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/ProvenanceEventEnricher.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/ProvenanceEventEnricher.java
@@ -25,9 +25,9 @@ public interface ProvenanceEventEnricher {
      * Returns a new Provenance event that has been updated to contain the
      * original and updated FlowFile attributes and content claim information.
      *
-     * @param record
-     * @param flowFile
-     * @return
+     * @param record record
+     * @param flowFile flowfile
+     * @return new event record
      */
     ProvenanceEventRecord enrich(ProvenanceEventRecord record, FlowFile flowFile);
 

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/RepositoryPurgeException.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/RepositoryPurgeException.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/RepositoryPurgeException.java
index 613baa8..e668be3 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/RepositoryPurgeException.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/RepositoryPurgeException.java
@@ -20,38 +20,24 @@ package org.apache.nifi.controller.repository;
  * This exception is thrown when a flow file repository was unable to be
  * properly purged.
  *
- * @author unattributed
  *
  */
 public class RepositoryPurgeException extends RuntimeException {
 
     private static final long serialVersionUID = 1894237987230873423L;
 
-    /**
-     * Default constructor
-     */
     public RepositoryPurgeException() {
         super();
     }
 
-    /**
-     * @param message
-     */
     public RepositoryPurgeException(String message) {
         super(message);
     }
 
-    /**
-     * @param cause
-     */
     public RepositoryPurgeException(Throwable cause) {
         super(cause);
     }
 
-    /**
-     * @param message
-     * @param cause
-     */
     public RepositoryPurgeException(String message, Throwable cause) {
         super(message, cause);
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/RingBufferEventRepository.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/RingBufferEventRepository.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/RingBufferEventRepository.java
index 6f222d9..fb3cdd2 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/RingBufferEventRepository.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/RingBufferEventRepository.java
@@ -67,7 +67,7 @@ public class RingBufferEventRepository implements FlowFileEventRepository {
 
     @Override
     public void purgeTransferEvents(final long cutoffEpochMilliseconds) {
-        // This is done so that if a processor is removed from the graph, its events 
+        // This is done so that if a processor is removed from the graph, its events
         // will be removed rather than being kept in memory
         for (final EventContainer container : componentEventMap.values()) {
             container.purgeEvents(cutoffEpochMilliseconds);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardFlowFileRecord.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardFlowFileRecord.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardFlowFileRecord.java
index d4c7e47..433c3d2 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardFlowFileRecord.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardFlowFileRecord.java
@@ -130,8 +130,8 @@ public final class StandardFlowFileRecord implements FlowFile, FlowFileRecord {
      * Provides the natural ordering for FlowFile objects which is based on
      * their identifier.
      *
-     * @param other
-     * @return
+     * @param other other
+     * @return standard compare contract
      */
     @Override
     public int compareTo(final FlowFile other) {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProcessSession.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProcessSession.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProcessSession.java
index e5cd03e..4827ab7 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProcessSession.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProcessSession.java
@@ -307,7 +307,7 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
 
         // Figure out which content claims can be released.
         // At this point, we will decrement the Claimant Count for the claims via the Content Repository.
-        // We do not actually destroy the content because otherwise, we could remove the 
+        // We do not actually destroy the content because otherwise, we could remove the
         // Original Claim and crash/restart before the FlowFileRepository is updated. This will result in the FlowFile being restored such that
         // the content claim points to the Original Claim -- which has already been removed!
         for (final Map.Entry<FlowFileRecord, StandardRepositoryRecord> entry : checkpoint.records.entrySet()) {
@@ -490,14 +490,14 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
 
     private void addEventType(final Map<String, Set<ProvenanceEventType>> map, final String id, final ProvenanceEventType eventType) {
         Set<ProvenanceEventType> eventTypes = map.get(id);
-        if ( eventTypes == null ) {
+        if (eventTypes == null) {
             eventTypes = new HashSet<>();
             map.put(id, eventTypes);
         }
-        
+
         eventTypes.add(eventType);
     }
-    
+
     private void updateProvenanceRepo(final Checkpoint checkpoint) {
         // Update Provenance Repository
         final ProvenanceEventRepository provenanceRepo = context.getProvenanceRepository();
@@ -507,7 +507,7 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
         // for this, so that we are able to ensure that the events are submitted in the proper order.
         final Set<ProvenanceEventRecord> recordsToSubmit = new LinkedHashSet<>();
         final Map<String, Set<ProvenanceEventType>> eventTypesPerFlowFileId = new HashMap<>();
-        
+
         final Set<ProvenanceEventRecord> processorGenerated = checkpoint.reportedEvents;
 
         // We first want to submit FORK events because if the Processor is going to create events against
@@ -524,11 +524,11 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
 
             if (!event.getChildUuids().isEmpty() && !isSpuriousForkEvent(event, checkpoint.removedFlowFiles) && !processorGenerated.contains(event)) {
                 recordsToSubmit.add(event);
-                
-                for ( final String childUuid : event.getChildUuids() ) {
+
+                for (final String childUuid : event.getChildUuids()) {
                     addEventType(eventTypesPerFlowFileId, childUuid, event.getEventType());
                 }
-                for ( final String parentUuid : event.getParentUuids() ) {
+                for (final String parentUuid : event.getParentUuids()) {
                     addEventType(eventTypesPerFlowFileId, parentUuid, event.getEventType());
                 }
             }
@@ -539,14 +539,14 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
             if (isSpuriousForkEvent(event, checkpoint.removedFlowFiles)) {
                 continue;
             }
-            if ( isSpuriousRouteEvent(event, checkpoint.records) ) {
+            if (isSpuriousRouteEvent(event, checkpoint.records)) {
                 continue;
             }
-            
-            // Check if the event indicates that the FlowFile was routed to the same 
+
+            // Check if the event indicates that the FlowFile was routed to the same
             // connection from which it was pulled (and only this connection). If so, discard the event.
             isSpuriousRouteEvent(event, checkpoint.records);
-            
+
             recordsToSubmit.add(event);
             addEventType(eventTypesPerFlowFileId, event.getFlowFileUuid(), event.getEventType());
         }
@@ -562,62 +562,62 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
                 addEventType(eventTypesPerFlowFileId, event.getFlowFileUuid(), event.getEventType());
             }
         }
-        
+
         // Check if content or attributes changed. If so, register the appropriate events.
-        for (final StandardRepositoryRecord repoRecord : checkpoint.records.values() ) {
+        for (final StandardRepositoryRecord repoRecord : checkpoint.records.values()) {
             final ContentClaim original = repoRecord.getOriginalClaim();
             final ContentClaim current = repoRecord.getCurrentClaim();
-            
+
             boolean contentChanged = false;
-            if ( original == null && current != null ) {
+            if (original == null && current != null) {
                 contentChanged = true;
             }
-            if ( original != null && current == null ) {
+            if (original != null && current == null) {
                 contentChanged = true;
             }
-            if ( original != null && current != null && !original.equals(current) ) {
+            if (original != null && current != null && !original.equals(current)) {
                 contentChanged = true;
             }
-            
+
             final FlowFileRecord curFlowFile = repoRecord.getCurrent();
             final String flowFileId = curFlowFile.getAttribute(CoreAttributes.UUID.key());
             boolean eventAdded = false;
-            
+
             if (checkpoint.removedFlowFiles.contains(flowFileId)) {
                 continue;
             }
-            
+
             final boolean newFlowFile = repoRecord.getOriginal() == null;
-            if ( contentChanged && !newFlowFile ) {
+            if (contentChanged && !newFlowFile) {
                 recordsToSubmit.add(provenanceReporter.build(curFlowFile, ProvenanceEventType.CONTENT_MODIFIED).build());
                 addEventType(eventTypesPerFlowFileId, flowFileId, ProvenanceEventType.CONTENT_MODIFIED);
                 eventAdded = true;
             }
-            
-            if ( checkpoint.createdFlowFiles.contains(flowFileId) ) {
+
+            if (checkpoint.createdFlowFiles.contains(flowFileId)) {
                 final Set<ProvenanceEventType> registeredTypes = eventTypesPerFlowFileId.get(flowFileId);
                 boolean creationEventRegistered = false;
-                if ( registeredTypes != null ) {
-                    if ( registeredTypes.contains(ProvenanceEventType.CREATE) ||
-                            registeredTypes.contains(ProvenanceEventType.FORK) ||
-                            registeredTypes.contains(ProvenanceEventType.JOIN) ||
-                            registeredTypes.contains(ProvenanceEventType.RECEIVE) ) {
+                if (registeredTypes != null) {
+                    if (registeredTypes.contains(ProvenanceEventType.CREATE)
+                            || registeredTypes.contains(ProvenanceEventType.FORK)
+                            || registeredTypes.contains(ProvenanceEventType.JOIN)
+                            || registeredTypes.contains(ProvenanceEventType.RECEIVE)) {
                         creationEventRegistered = true;
                     }
                 }
-                
-                if ( !creationEventRegistered ) {
+
+                if (!creationEventRegistered) {
                     recordsToSubmit.add(provenanceReporter.build(curFlowFile, ProvenanceEventType.CREATE).build());
                     eventAdded = true;
                 }
             }
-            
-            if ( !eventAdded && !repoRecord.getUpdatedAttributes().isEmpty() ) {
+
+            if (!eventAdded && !repoRecord.getUpdatedAttributes().isEmpty()) {
                 // We generate an ATTRIBUTES_MODIFIED event only if no other event has been
                 // created for the FlowFile. We do this because all events contain both the
                 // newest and the original attributes, so generating an ATTRIBUTES_MODIFIED
                 // event is redundant if another already exists.
-                if ( !eventTypesPerFlowFileId.containsKey(flowFileId) ) {
+                if (!eventTypesPerFlowFileId.containsKey(flowFileId)) {
                     recordsToSubmit.add(provenanceReporter.build(curFlowFile, ProvenanceEventType.ATTRIBUTES_MODIFIED).build());
                     addEventType(eventTypesPerFlowFileId, flowFileId, ProvenanceEventType.ATTRIBUTES_MODIFIED);
                 }
@@ -689,8 +689,12 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
         if (originalClaim == null) {
             builder.setCurrentContentClaim(null, null, null, null, 0L);
         } else {
-            builder.setCurrentContentClaim(originalClaim.getContainer(), originalClaim.getSection(), originalClaim.getId(), repoRecord.getOriginal().getContentClaimOffset(), repoRecord.getOriginal().getSize());
-            builder.setPreviousContentClaim(originalClaim.getContainer(), originalClaim.getSection(), originalClaim.getId(), repoRecord.getOriginal().getContentClaimOffset(), repoRecord.getOriginal().getSize());
+            builder.setCurrentContentClaim(
+                    originalClaim.getContainer(), originalClaim.getSection(), originalClaim.getId(), repoRecord.getOriginal().getContentClaimOffset(), repoRecord.getOriginal().getSize()
+            );
+            builder.setPreviousContentClaim(
+                    originalClaim.getContainer(), originalClaim.getSection(), originalClaim.getId(), repoRecord.getOriginal().getContentClaimOffset(), repoRecord.getOriginal().getSize()
+            );
         }
     }
 
@@ -725,7 +729,8 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
         return recordBuilder.build();
     }
 
-    private StandardProvenanceEventRecord enrich(final ProvenanceEventRecord rawEvent, final Map<String, FlowFileRecord> flowFileRecordMap, final Map<FlowFileRecord, StandardRepositoryRecord> records, final boolean updateAttributes) {
+    private StandardProvenanceEventRecord enrich(
+            final ProvenanceEventRecord rawEvent, final Map<String, FlowFileRecord> flowFileRecordMap, final Map<FlowFileRecord, StandardRepositoryRecord> records, final boolean updateAttributes) {
         final StandardProvenanceEventRecord.Builder recordBuilder = new StandardProvenanceEventRecord.Builder().fromEvent(rawEvent);
         final FlowFileRecord eventFlowFile = flowFileRecordMap.get(rawEvent.getFlowFileUuid());
         if (eventFlowFile != null) {
@@ -770,8 +775,8 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
      * when a Processor calls #create(FlowFile) and then removes the created
      * FlowFile.
      *
-     * @param event
-     * @return
+     * @param event event
+     * @return true if spurious fork
      */
     private boolean isSpuriousForkEvent(final ProvenanceEventRecord event, final Set<String> removedFlowFiles) {
         if (event.getEventType() == ProvenanceEventType.FORK) {
@@ -784,33 +789,33 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
         return false;
     }
 
-    
     /**
-     * Checks if the given event is a spurious ROUTE, meaning that the ROUTE indicates that a FlowFile
-     * was routed to a relationship with only 1 connection and that Connection is the Connection from which
-     * the FlowFile was pulled. I.e., the FlowFile was really routed nowhere.
-     * 
-     * @param event
-     * @param records
-     * @return
+     * Checks if the given event is a spurious ROUTE, meaning that the ROUTE
+     * indicates that a FlowFile was routed to a relationship with only 1
+     * connection and that Connection is the Connection from which the FlowFile
+     * was pulled. I.e., the FlowFile was really routed nowhere.
+     *
+     * @param event event
+     * @param records records
+     * @return true if spurious route
      */
     private boolean isSpuriousRouteEvent(final ProvenanceEventRecord event, final Map<FlowFileRecord, StandardRepositoryRecord> records) {
-        if ( event.getEventType() == ProvenanceEventType.ROUTE ) {
+        if (event.getEventType() == ProvenanceEventType.ROUTE) {
             final String relationshipName = event.getRelationship();
             final Relationship relationship = new Relationship.Builder().name(relationshipName).build();
             final Collection<Connection> connectionsForRelationship = this.context.getConnections(relationship);
-            
+
             // If the number of connections for this relationship is not 1, then we can't ignore this ROUTE event,
             // as it may be cloning the FlowFile and adding to multiple connections.
-            if ( connectionsForRelationship.size() == 1 ) {
-                for ( final Map.Entry<FlowFileRecord, StandardRepositoryRecord> entry : records.entrySet() ) {
+            if (connectionsForRelationship.size() == 1) {
+                for (final Map.Entry<FlowFileRecord, StandardRepositoryRecord> entry : records.entrySet()) {
                     final FlowFileRecord flowFileRecord = entry.getKey();
-                    if ( event.getFlowFileUuid().equals(flowFileRecord.getAttribute(CoreAttributes.UUID.key())) ) {
+                    if (event.getFlowFileUuid().equals(flowFileRecord.getAttribute(CoreAttributes.UUID.key()))) {
                         final StandardRepositoryRecord repoRecord = entry.getValue();
-                        if ( repoRecord.getOriginalQueue() == null ) {
+                        if (repoRecord.getOriginalQueue() == null) {
                             return false;
                         }
-                        
+
                         final String originalQueueId = repoRecord.getOriginalQueue().getIdentifier();
                         final Connection destinationConnection = connectionsForRelationship.iterator().next();
                         final String destinationQueueId = destinationConnection.getFlowFileQueue().getIdentifier();
@@ -819,10 +824,10 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
                 }
             }
         }
-        
+
         return false;
     }
-    
+
     @Override
     public void rollback() {
         rollback(false);
@@ -919,7 +924,7 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
     /**
      * Destroys a ContentClaim that was being written to but is no longer needed
      *
-     * @param claim
+     * @param claim claim to destroy
      */
     private void destroyContent(final ContentClaim claim) {
         if (claim == null) {
@@ -997,7 +1002,8 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
         final int numCreated = checkpoint.createdFlowFiles.size();
 
         final StringBuilder sb = new StringBuilder(512);
-        if (!LOG.isDebugEnabled() && (largestTransferSetSize > VERBOSE_LOG_THRESHOLD || numModified > VERBOSE_LOG_THRESHOLD || numCreated > VERBOSE_LOG_THRESHOLD || numRemoved > VERBOSE_LOG_THRESHOLD)) {
+        if (!LOG.isDebugEnabled() && (largestTransferSetSize > VERBOSE_LOG_THRESHOLD
+                || numModified > VERBOSE_LOG_THRESHOLD || numCreated > VERBOSE_LOG_THRESHOLD || numRemoved > VERBOSE_LOG_THRESHOLD)) {
             if (numCreated > 0) {
                 sb.append("created ").append(numCreated).append(" FlowFiles, ");
             }
@@ -1966,7 +1972,7 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
             throw ffae;
         } catch (final IOException ioe) {
             if (appendToClaim) {
-                resetWriteClaims();	// need to reset write claim before we can remove the claim
+                resetWriteClaims(); // need to reset write claim before we can remove the claim
             }
             destroyContent(newClaim);
             throw new ProcessException("IOException thrown from " + connectableDescription + ": " + ioe.toString(), ioe);
@@ -1992,7 +1998,7 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
         final StandardRepositoryRecord record = records.get(source);
         long newSize = 0L;
 
-        // Get the current Content Claim from the record and see if we already have 
+        // Get the current Content Claim from the record and see if we already have
         // an OutputStream that we can append to.
         ContentClaim oldClaim = record.getCurrentClaim();
         ByteCountingOutputStream outStream = appendableStreams.get(oldClaim);
@@ -2087,17 +2093,16 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
      * since it was last committed to the FlowFile repository, because this
      * indicates that the content is no longer needed and should be cleaned up.
      *
-     * @param record
+     * @param record record
      */
     private void removeTemporaryClaim(final StandardRepositoryRecord record) {
         final boolean contentModified = record.getWorkingClaim() != null && record.getWorkingClaim() != record.getOriginalClaim();
 
         // If the working claim is not the same as the original claim, we have modified the content of
-        // the FlowFile, and we need to remove the newly created file (the working claim). However, if 
-        // they are the same, we cannot just remove the claim because record.getWorkingClaim() will return 
-        // the original claim if the record is "working" but the content has not been modified 
+        // the FlowFile, and we need to remove the newly created file (the working claim). However, if
+        // they are the same, we cannot just remove the claim because record.getWorkingClaim() will return
+        // the original claim if the record is "working" but the content has not been modified
         // (e.g., in the case of attributes only were updated)
-        //
         // In other words:
         //  If we modify the attributes of a FlowFile, and then we call record.getWorkingClaim(), this will
         //  return the same claim as record.getOriginalClaim(). So we cannot just remove the working claim because
@@ -2150,10 +2155,8 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
     }
 
     /**
-     * Indicates whether or not multiple FlowFiles should be merged into a
-     * single ContentClaim
-     *
-     * @return
+     * @return Indicates whether or not multiple FlowFiles should be merged into
+     * a single ContentClaim
      */
     private boolean isMergeContent() {
         if (writeRecursionLevel > 0) {
@@ -2364,7 +2367,7 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
                 enforceCurrentWriteClaimState();
                 newClaim = currentWriteClaim;
                 claimOffset = currentWriteClaimSize;
-                
+
                 final long bytesCopied = StreamUtils.copy(source, currentWriteClaimStream);
                 bytesWritten.increment(bytesCopied);
                 currentWriteClaimSize += bytesCopied;
@@ -2373,7 +2376,7 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
                 try {
                     newClaim = context.getContentRepository().create(context.getConnectable().isLossTolerant());
                     claimLog.debug("Creating ContentClaim {} for 'importFrom' for {}", newClaim, destination);
-                    
+
                     newSize = context.getContentRepository().importFrom(source, newClaim, appendToClaim);
                     bytesWritten.increment(newSize);
                     currentWriteClaimSize += newSize;
@@ -2386,7 +2389,7 @@ public final class StandardProcessSession implements ProcessSession, ProvenanceE
                 resetWriteClaims();
             }
 
-            if ( newClaim != null ) {
+            if (newClaim != null) {
                 destroyContent(newClaim);
             }
             throw new FlowFileAccessException("Failed to import data from " + source + " for " + destination + " due to " + t.toString(), t);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProvenanceReporter.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProvenanceReporter.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProvenanceReporter.java
index 23d090c..5e8bb3e 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProvenanceReporter.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardProvenanceReporter.java
@@ -56,7 +56,7 @@ public class StandardProvenanceReporter implements ProvenanceReporter {
     /**
      * Removes the given event from the reporter
      *
-     * @param event
+     * @param event event
      */
     void remove(final ProvenanceEventRecord event) {
         events.remove(event);
@@ -72,9 +72,9 @@ public class StandardProvenanceReporter implements ProvenanceReporter {
      * ability to de-dupe events, since one or more events may be created by the
      * session itself, as well as by the Processor
      *
-     * @param parents
-     * @param child
-     * @return
+     * @param parents parents
+     * @param child child
+     * @return record
      */
     ProvenanceEventRecord generateJoinEvent(final Collection<FlowFile> parents, final FlowFile child) {
         final ProvenanceEventBuilder eventBuilder = build(child, ProvenanceEventType.JOIN);
@@ -114,7 +114,8 @@ public class StandardProvenanceReporter implements ProvenanceReporter {
     @Override
     public void receive(final FlowFile flowFile, final String transitUri, final String sourceSystemFlowFileIdentifier, final String details, final long transmissionMillis) {
         try {
-            final ProvenanceEventRecord record = build(flowFile, ProvenanceEventType.RECEIVE).setTransitUri(transitUri).setSourceSystemFlowFileIdentifier(sourceSystemFlowFileIdentifier).setEventDuration(transmissionMillis).setDetails(details).build();
+            final ProvenanceEventRecord record = build(flowFile, ProvenanceEventType.RECEIVE)
+                    .setTransitUri(transitUri).setSourceSystemFlowFileIdentifier(sourceSystemFlowFileIdentifier).setEventDuration(transmissionMillis).setDetails(details).build();
             events.add(record);
         } catch (final Exception e) {
             logger.error("Failed to generate Provenance Event due to " + e);
@@ -160,7 +161,7 @@ public class StandardProvenanceReporter implements ProvenanceReporter {
             final ProvenanceEventRecord record = build(flowFile, ProvenanceEventType.SEND).setTransitUri(transitUri).setEventDuration(transmissionMillis).setDetails(details).build();
 
             final ProvenanceEventRecord enriched = eventEnricher.enrich(record, flowFile);
-            
+
             if (force) {
                 repository.registerEvent(enriched);
             } else {
@@ -326,7 +327,7 @@ public class StandardProvenanceReporter implements ProvenanceReporter {
             }
         }
     }
-    
+
     @Override
     public void modifyContent(final FlowFile flowFile) {
         modifyContent(flowFile, null, -1L);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardRepositoryRecord.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardRepositoryRecord.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardRepositoryRecord.java
index 6ecb991..c965ed8 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardRepositoryRecord.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/repository/StandardRepositoryRecord.java
@@ -24,10 +24,6 @@ import org.apache.nifi.controller.FlowFileQueue;
 import org.apache.nifi.controller.repository.claim.ContentClaim;
 import org.apache.nifi.processor.Relationship;
 
-/**
- *
- * @author
- */
 public class StandardRepositoryRecord implements RepositoryRecord {
 
     private RepositoryRecordType type = null;
@@ -44,7 +40,7 @@ public class StandardRepositoryRecord implements RepositoryRecord {
      * Creates a new record which has no original claim or flow file - it is
      * entirely new
      *
-     * @param originalQueue
+     * @param originalQueue queue
      */
     public StandardRepositoryRecord(final FlowFileQueue originalQueue) {
         this(originalQueue, null);
@@ -54,8 +50,8 @@ public class StandardRepositoryRecord implements RepositoryRecord {
     /**
      * Creates a record based on given original items
      *
-     * @param originalQueue
-     * @param originalFlowFileRecord
+     * @param originalQueue queue
+     * @param originalFlowFileRecord record
      */
     public StandardRepositoryRecord(final FlowFileQueue originalQueue, final FlowFileRecord originalFlowFileRecord) {
         this(originalQueue, originalFlowFileRecord, null);
@@ -116,22 +112,22 @@ public class StandardRepositoryRecord implements RepositoryRecord {
 
     public void setWorking(final FlowFileRecord flowFile, final String attributeKey, final String attributeValue) {
         workingFlowFileRecord = flowFile;
-        
+
         // If setting attribute to same value as original, don't add to updated attributes
         final String currentValue = originalAttributes.get(attributeKey);
-        if ( currentValue == null || !currentValue.equals(attributeValue) ) {
-        	updatedAttributes.put(attributeKey, attributeValue);
+        if (currentValue == null || !currentValue.equals(attributeValue)) {
+            updatedAttributes.put(attributeKey, attributeValue);
         }
     }
 
     public void setWorking(final FlowFileRecord flowFile, final Map<String, String> updatedAttribs) {
         workingFlowFileRecord = flowFile;
-        
-        for ( final Map.Entry<String, String> entry : updatedAttribs.entrySet() ) {
-        	final String currentValue = originalAttributes.get(entry.getKey());
-        	if ( currentValue == null || !currentValue.equals(entry.getValue()) ) {
-        		updatedAttributes.put(entry.getKey(), entry.getValue());
-        	}
+
+        for (final Map.Entry<String, String> entry : updatedAttribs.entrySet()) {
+            final String currentValue = originalAttributes.get(entry.getKey());
+            if (currentValue == null || !currentValue.equals(entry.getValue())) {
+                updatedAttributes.put(entry.getKey(), entry.getValue());
+            }
         }
     }
 


[08/11] incubator-nifi git commit: NIFI-271 checkpoint

Posted by jo...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderImplTest.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderImplTest.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderImplTest.java
index 59837c1..ab10b01 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderImplTest.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderImplTest.java
@@ -16,8 +16,6 @@
  */
 package org.apache.nifi.cluster.protocol.impl;
 
-import org.apache.nifi.cluster.protocol.impl.SocketProtocolListener;
-import org.apache.nifi.cluster.protocol.impl.ClusterManagerProtocolSenderImpl;
 import java.io.IOException;
 import java.net.InetAddress;
 import org.apache.nifi.cluster.protocol.NodeIdentifier;
@@ -33,11 +31,13 @@ import org.apache.nifi.cluster.protocol.message.ProtocolMessage;
 import org.apache.nifi.io.socket.ServerSocketConfiguration;
 import org.apache.nifi.io.socket.SocketConfiguration;
 import org.junit.After;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.fail;
 import org.junit.Before;
 import org.junit.Test;
 import static org.mockito.Matchers.any;
-import static org.mockito.Mockito.*;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
 import org.mockito.invocation.InvocationOnMock;
 import org.mockito.stubbing.Answer;
 
@@ -45,48 +45,48 @@ import org.mockito.stubbing.Answer;
  * @author unattributed
  */
 public class ClusterManagerProtocolSenderImplTest {
-    
+
     private InetAddress address;
-    
+
     private int port;
-    
+
     private SocketProtocolListener listener;
-    
+
     private ClusterManagerProtocolSenderImpl sender;
-    
+
     private ProtocolHandler mockHandler;
-    
+
     @Before
     public void setup() throws IOException {
-        
+
         address = InetAddress.getLocalHost();
         ServerSocketConfiguration serverSocketConfiguration = new ServerSocketConfiguration();
         serverSocketConfiguration.setSocketTimeout(2000);
 
         mockHandler = mock(ProtocolHandler.class);
-        
+
         ProtocolContext protocolContext = new JaxbProtocolContext(JaxbProtocolUtils.JAXB_CONTEXT);
-        
+
         listener = new SocketProtocolListener(5, 0, serverSocketConfiguration, protocolContext);
         listener.addHandler(mockHandler);
         listener.start();
-        
+
         port = listener.getPort();
-        
+
         SocketConfiguration socketConfiguration = new SocketConfiguration();
         sender = new ClusterManagerProtocolSenderImpl(socketConfiguration, protocolContext);
     }
-    
+
     @After
     public void teardown() throws IOException {
-        if(listener.isRunning()) {
+        if (listener.isRunning()) {
             listener.stop();
         }
     }
-    
+
     @Test
     public void testRequestFlow() throws Exception {
-        
+
         when(mockHandler.canHandle(any(ProtocolMessage.class))).thenReturn(Boolean.TRUE);
         when(mockHandler.handle(any(ProtocolMessage.class))).thenReturn(new FlowResponseMessage());
         FlowRequestMessage request = new FlowRequestMessage();
@@ -94,10 +94,10 @@ public class ClusterManagerProtocolSenderImplTest {
         FlowResponseMessage response = sender.requestFlow(request);
         assertNotNull(response);
     }
-    
+
     @Test
     public void testRequestFlowWithBadResponseMessage() throws Exception {
-        
+
         when(mockHandler.canHandle(any(ProtocolMessage.class))).thenReturn(Boolean.TRUE);
         when(mockHandler.handle(any(ProtocolMessage.class))).thenReturn(new PingMessage());
         FlowRequestMessage request = new FlowRequestMessage();
@@ -105,16 +105,17 @@ public class ClusterManagerProtocolSenderImplTest {
         try {
             sender.requestFlow(request);
             fail("failed to throw exception");
-        } catch(ProtocolException pe) {}
-        
+        } catch (ProtocolException pe) {
+        }
+
     }
-    
+
     @Test
     public void testRequestFlowDelayedResponse() throws Exception {
-        
+
         final int time = 250;
         sender.getSocketConfiguration().setSocketTimeout(time);
-        
+
         when(mockHandler.canHandle(any(ProtocolMessage.class))).thenReturn(Boolean.TRUE);
         when(mockHandler.handle(any(ProtocolMessage.class))).thenAnswer(new Answer<FlowResponseMessage>() {
             @Override
@@ -128,7 +129,8 @@ public class ClusterManagerProtocolSenderImplTest {
         try {
             sender.requestFlow(request);
             fail("failed to throw exception");
-        } catch(ProtocolException pe) {}
+        } catch (ProtocolException pe) {
+        }
     }
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceDiscoveryTest.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceDiscoveryTest.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceDiscoveryTest.java
index e3703e2..8df6dcb 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceDiscoveryTest.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceDiscoveryTest.java
@@ -16,7 +16,6 @@
  */
 package org.apache.nifi.cluster.protocol.impl;
 
-import org.apache.nifi.cluster.protocol.impl.ClusterServiceDiscovery;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.net.DatagramPacket;
@@ -32,7 +31,8 @@ import org.apache.nifi.cluster.protocol.message.ServiceBroadcastMessage;
 import org.apache.nifi.io.socket.multicast.MulticastConfiguration;
 import org.apache.nifi.io.socket.multicast.MulticastUtils;
 import org.junit.After;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
 import org.junit.Before;
 import org.junit.Ignore;
 import org.junit.Test;
@@ -41,60 +41,60 @@ import org.junit.Test;
  * @author unattributed
  */
 public class ClusterServiceDiscoveryTest {
-    
+
     private ClusterServiceDiscovery discovery;
-    
+
     private String serviceName;
-    
+
     private MulticastSocket socket;
-    
+
     private InetSocketAddress multicastAddress;
-    
+
     private MulticastConfiguration configuration;
-    
+
     private ProtocolContext protocolContext;
-    
+
     @Before
     public void setup() throws Exception {
 
         serviceName = "some-service";
         multicastAddress = new InetSocketAddress("225.1.1.1", 22222);
         configuration = new MulticastConfiguration();
-        
+
         protocolContext = new JaxbProtocolContext(JaxbProtocolUtils.JAXB_CONTEXT);
-        
+
         discovery = new ClusterServiceDiscovery(serviceName, multicastAddress, configuration, protocolContext);
         discovery.start();
 
         socket = MulticastUtils.createMulticastSocket(multicastAddress.getPort(), configuration);
     }
-    
+
     @After
     public void teardown() throws IOException {
         try {
-            if(discovery.isRunning()) {
+            if (discovery.isRunning()) {
                 discovery.stop();
             }
         } finally {
             MulticastUtils.closeQuietly(socket);
         }
     }
-    
+
     @Ignore("Test needs to be fixed.  Requires an active network connection")
     @Test
     public void testGetAddressOnStartup() {
         assertNull(discovery.getService());
-    }   
-            
+    }
+
     @Ignore("This test has an NPE after ignoring another...perhaps has a bad inter-test dependency")
     @Test
     public void testGetAddressAfterBroadcast() throws Exception {
-        
+
         ServiceBroadcastMessage msg = new ServiceBroadcastMessage();
         msg.setServiceName("some-service");
         msg.setAddress("3.3.3.3");
         msg.setPort(1234);
-        
+
         // marshal message to output stream
         ProtocolMessageMarshaller marshaller = protocolContext.createMarshaller();
         ByteArrayOutputStream baos = new ByteArrayOutputStream();
@@ -102,22 +102,22 @@ public class ClusterServiceDiscoveryTest {
         byte[] requestPacketBytes = baos.toByteArray();
         DatagramPacket packet = new DatagramPacket(requestPacketBytes, requestPacketBytes.length, multicastAddress);
         socket.send(packet);
-        
+
         Thread.sleep(250);
-       
+
         InetSocketAddress updatedAddress = discovery.getService().getServiceAddress();
         assertEquals("some-service", discovery.getServiceName());
         assertEquals("3.3.3.3", updatedAddress.getHostName());
         assertEquals(1234, updatedAddress.getPort());
-        
+
     }
-    
+
     @Ignore("Test needs to be fixed.  Requires an active network connection")
     @Test
     public void testBadBroadcastMessage() throws Exception {
-        
+
         ProtocolMessage msg = new PingMessage();
-        
+
         // marshal message to output stream
         ProtocolMessageMarshaller marshaller = protocolContext.createMarshaller();
         ByteArrayOutputStream baos = new ByteArrayOutputStream();
@@ -125,11 +125,11 @@ public class ClusterServiceDiscoveryTest {
         byte[] requestPacketBytes = baos.toByteArray();
         DatagramPacket packet = new DatagramPacket(requestPacketBytes, requestPacketBytes.length, multicastAddress);
         socket.send(packet);
-        
+
         Thread.sleep(250);
-       
+
         assertNull(discovery.getService());
-        
+
     }
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceLocatorTest.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceLocatorTest.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceLocatorTest.java
index b1c156b..ea40150 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceLocatorTest.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceLocatorTest.java
@@ -16,104 +16,104 @@
  */
 package org.apache.nifi.cluster.protocol.impl;
 
-import org.apache.nifi.cluster.protocol.impl.ClusterServiceLocator;
-import org.apache.nifi.cluster.protocol.impl.ClusterServiceDiscovery;
 import java.net.InetSocketAddress;
 import java.util.concurrent.TimeUnit;
 import org.apache.nifi.io.socket.multicast.DiscoverableService;
 import org.apache.nifi.io.socket.multicast.DiscoverableServiceImpl;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
 import org.junit.Before;
 import org.junit.Test;
-import static org.mockito.Mockito.*;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
 import org.mockito.stubbing.OngoingStubbing;
 
 public class ClusterServiceLocatorTest {
-    
+
     private ClusterServiceDiscovery mockServiceDiscovery;
-    
+
     private int fixedPort;
-    
+
     private DiscoverableService fixedService;
-    
+
     private ClusterServiceLocator serviceDiscoveryLocator;
-    
+
     private ClusterServiceLocator serviceDiscoveryFixedPortLocator;
-    
+
     private ClusterServiceLocator fixedServiceLocator;
-    
+
     @Before
     public void setup() throws Exception {
-        
+
         fixedPort = 1;
         mockServiceDiscovery = mock(ClusterServiceDiscovery.class);
         fixedService = new DiscoverableServiceImpl("some-service", InetSocketAddress.createUnresolved("some-host", 20));
-        
+
         serviceDiscoveryLocator = new ClusterServiceLocator(mockServiceDiscovery);
         serviceDiscoveryFixedPortLocator = new ClusterServiceLocator(mockServiceDiscovery, fixedPort);
         fixedServiceLocator = new ClusterServiceLocator(fixedService);
-        
+
     }
-    
+
     @Test
     public void getServiceWhenServiceDiscoveryNotStarted() {
         assertNull(serviceDiscoveryLocator.getService());
     }
-    
+
     @Test
     public void getServiceWhenServiceDiscoveryFixedPortNotStarted() {
         assertNull(serviceDiscoveryLocator.getService());
     }
-    
+
     @Test
     public void getServiceWhenFixedServiceNotStarted() {
         assertEquals(fixedService, fixedServiceLocator.getService());
     }
-    
+
     @Test
     public void getServiceNotOnFirstAttempt() {
-                
+
         ClusterServiceLocator.AttemptsConfig config = new ClusterServiceLocator.AttemptsConfig();
         config.setNumAttempts(2);
         config.setTimeBetweenAttempsUnit(TimeUnit.SECONDS);
         config.setTimeBetweenAttempts(1);
-        
+
         serviceDiscoveryLocator.setAttemptsConfig(config);
-        
+
         OngoingStubbing<DiscoverableService> stubbing = null;
-        for(int i = 0; i < config.getNumAttempts() - 1; i++) {
-            if(stubbing == null) {
+        for (int i = 0; i < config.getNumAttempts() - 1; i++) {
+            if (stubbing == null) {
                 stubbing = when(mockServiceDiscovery.getService()).thenReturn(null);
             } else {
                 stubbing.thenReturn(null);
             }
         }
         stubbing.thenReturn(fixedService);
-        
+
         assertEquals(fixedService, serviceDiscoveryLocator.getService());
-        
+
     }
-    
+
     @Test
     public void getServiceNotOnFirstAttemptWithFixedPort() {
-        
+
         ClusterServiceLocator.AttemptsConfig config = new ClusterServiceLocator.AttemptsConfig();
         config.setNumAttempts(2);
         config.setTimeBetweenAttempsUnit(TimeUnit.SECONDS);
         config.setTimeBetweenAttempts(1);
-        
+
         serviceDiscoveryFixedPortLocator.setAttemptsConfig(config);
-        
+
         OngoingStubbing<DiscoverableService> stubbing = null;
-        for(int i = 0; i < config.getNumAttempts() - 1; i++) {
-            if(stubbing == null) {
+        for (int i = 0; i < config.getNumAttempts() - 1; i++) {
+            if (stubbing == null) {
                 stubbing = when(mockServiceDiscovery.getService()).thenReturn(null);
             } else {
                 stubbing.thenReturn(null);
             }
         }
         stubbing.thenReturn(fixedService);
-        
+
         InetSocketAddress resultAddress = InetSocketAddress.createUnresolved(fixedService.getServiceAddress().getHostName(), fixedPort);
         DiscoverableService resultService = new DiscoverableServiceImpl(fixedService.getServiceName(), resultAddress);
         assertEquals(resultService, serviceDiscoveryFixedPortLocator.getService());

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServicesBroadcasterTest.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServicesBroadcasterTest.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServicesBroadcasterTest.java
index ec1f26d..5e98397 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServicesBroadcasterTest.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/ClusterServicesBroadcasterTest.java
@@ -16,8 +16,6 @@
  */
 package org.apache.nifi.cluster.protocol.impl;
 
-import org.apache.nifi.cluster.protocol.impl.ClusterServicesBroadcaster;
-import org.apache.nifi.cluster.protocol.impl.MulticastProtocolListener;
 import java.net.InetSocketAddress;
 import org.apache.nifi.cluster.protocol.ProtocolContext;
 import org.apache.nifi.cluster.protocol.ProtocolException;
@@ -30,7 +28,8 @@ import org.apache.nifi.io.socket.multicast.DiscoverableService;
 import org.apache.nifi.io.socket.multicast.DiscoverableServiceImpl;
 import org.apache.nifi.io.socket.multicast.MulticastConfiguration;
 import org.junit.After;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
 import org.junit.Before;
 import org.junit.Ignore;
 import org.junit.Test;
@@ -39,68 +38,68 @@ import org.junit.Test;
  * @author unattributed
  */
 public class ClusterServicesBroadcasterTest {
-    
+
     private ClusterServicesBroadcaster broadcaster;
-    
+
     private MulticastProtocolListener listener;
-    
+
     private DummyProtocolHandler handler;
-    
+
     private InetSocketAddress multicastAddress;
-    
+
     private DiscoverableService broadcastedService;
 
     private ProtocolContext protocolContext;
-    
+
     private MulticastConfiguration configuration;
-    
+
     @Before
     public void setup() throws Exception {
 
         broadcastedService = new DiscoverableServiceImpl("some-service", new InetSocketAddress("localhost", 11111));
-        
+
         multicastAddress = new InetSocketAddress("225.1.1.1", 22222);
-        
+
         configuration = new MulticastConfiguration();
-        
+
         protocolContext = new JaxbProtocolContext(JaxbProtocolUtils.JAXB_CONTEXT);
-        
+
         broadcaster = new ClusterServicesBroadcaster(multicastAddress, configuration, protocolContext, "500 ms");
         broadcaster.addService(broadcastedService);
-        
+
         handler = new DummyProtocolHandler();
         listener = new MulticastProtocolListener(5, multicastAddress, configuration, protocolContext);
         listener.addHandler(handler);
     }
-    
+
     @After
     public void teardown() {
-        
-        if(broadcaster.isRunning()) {
+
+        if (broadcaster.isRunning()) {
             broadcaster.stop();
         }
-        
+
         try {
-            if(listener.isRunning()) {
+            if (listener.isRunning()) {
                 listener.stop();
             }
-        } catch(Exception ex) {
+        } catch (Exception ex) {
             ex.printStackTrace(System.out);
         }
-        
+
     }
-    
+
     @Ignore("fails needs to be fixed")
     @Test
     public void testBroadcastReceived() throws Exception {
-        
+
         broadcaster.start();
         listener.start();
-        
+
         Thread.sleep(1000);
-        
+
         listener.stop();
-        
+
         assertNotNull(handler.getProtocolMessage());
         assertEquals(ProtocolMessage.MessageType.SERVICE_BROADCAST, handler.getProtocolMessage().getType());
         final ServiceBroadcastMessage msg = (ServiceBroadcastMessage) handler.getProtocolMessage();
@@ -108,11 +107,11 @@ public class ClusterServicesBroadcasterTest {
         assertEquals(broadcastedService.getServiceAddress().getHostName(), msg.getAddress());
         assertEquals(broadcastedService.getServiceAddress().getPort(), msg.getPort());
     }
-    
+
     private class DummyProtocolHandler implements ProtocolHandler {
 
         private ProtocolMessage protocolMessage;
-        
+
         @Override
         public boolean canHandle(ProtocolMessage msg) {
             return true;
@@ -123,11 +122,11 @@ public class ClusterServicesBroadcasterTest {
             this.protocolMessage = msg;
             return null;
         }
-        
+
         public ProtocolMessage getProtocolMessage() {
             return protocolMessage;
         }
-        
+
     }
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/MulticastProtocolListenerTest.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/MulticastProtocolListenerTest.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/MulticastProtocolListenerTest.java
index 4233d88..690d416 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/MulticastProtocolListenerTest.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/MulticastProtocolListenerTest.java
@@ -35,69 +35,66 @@ import org.apache.nifi.cluster.protocol.message.ProtocolMessage;
 import org.apache.nifi.io.socket.multicast.MulticastConfiguration;
 import org.apache.nifi.io.socket.multicast.MulticastUtils;
 import org.junit.After;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
 import org.junit.Before;
 import org.junit.Ignore;
 import org.junit.Test;
 
-/**
- * @author unattributed
- */
 public class MulticastProtocolListenerTest {
-    
+
     private MulticastProtocolListener listener;
-    
+
     private MulticastSocket socket;
-    
+
     private InetSocketAddress address;
-    
+
     private MulticastConfiguration configuration;
-    
+
     private ProtocolContext protocolContext;
-    
+
     @Before
     public void setup() throws Exception {
 
         address = new InetSocketAddress("226.1.1.1", 60000);
         configuration = new MulticastConfiguration();
-        
+
         protocolContext = new JaxbProtocolContext(JaxbProtocolUtils.JAXB_CONTEXT);
-        
+
         listener = new MulticastProtocolListener(5, address, configuration, protocolContext);
         listener.start();
 
         socket = MulticastUtils.createMulticastSocket(address.getPort(), configuration);
     }
-    
+
     @After
     public void teardown() throws IOException {
         try {
-            if(listener.isRunning()) {
+            if (listener.isRunning()) {
                 listener.stop();
             }
         } finally {
             MulticastUtils.closeQuietly(socket);
         }
     }
-    
+
     @Ignore("Test needs to be reworked.  Fails if on a system without actiev network connection")
     @Test
     public void testBadRequest() throws Exception {
         DelayedProtocolHandler handler = new DelayedProtocolHandler(0);
         listener.addHandler(handler);
-        DatagramPacket packet = new DatagramPacket(new byte[] {5}, 1, address);
+        DatagramPacket packet = new DatagramPacket(new byte[]{5}, 1, address);
         socket.send(packet);
         Thread.sleep(250);
         assertEquals(0, handler.getMessages().size());
     }
-    
+
     @Ignore("this test works sometimes and fails others - needs work to be reliable")
     @Test
     public void testRequest() throws Exception {
 
         ReflexiveProtocolHandler handler = new ReflexiveProtocolHandler();
         listener.addHandler(handler);
-        
+
         ProtocolMessage msg = new PingMessage();
         MulticastProtocolMessage multicastMsg = new MulticastProtocolMessage("some-id", msg);
 
@@ -112,13 +109,13 @@ public class MulticastProtocolListenerTest {
         Thread.sleep(250);
         assertEquals(1, handler.getMessages().size());
         assertEquals(msg.getType(), handler.getMessages().get(0).getType());
-        
+
     }
-    
+
     private class ReflexiveProtocolHandler implements ProtocolHandler {
-        
+
         private List<ProtocolMessage> messages = new ArrayList<>();
-        
+
         @Override
         public ProtocolMessage handle(ProtocolMessage msg) throws ProtocolException {
             messages.add(msg);
@@ -129,30 +126,30 @@ public class MulticastProtocolListenerTest {
         public boolean canHandle(ProtocolMessage msg) {
             return true;
         }
-        
+
         public List<ProtocolMessage> getMessages() {
             return messages;
         }
-        
+
     }
 
     private class DelayedProtocolHandler implements ProtocolHandler {
-            
+
         private int delay = 0;
-        
+
         private List<ProtocolMessage> messages = new ArrayList<>();
-            
+
         public DelayedProtocolHandler(int delay) {
             this.delay = delay;
         }
-        
+
         @Override
         public ProtocolMessage handle(ProtocolMessage msg) throws ProtocolException {
             try {
                 messages.add(msg);
                 Thread.sleep(delay);
                 return null;
-            } catch(final InterruptedException ie) {
+            } catch (final InterruptedException ie) {
                 throw new ProtocolException(ie);
             }
 
@@ -162,10 +159,10 @@ public class MulticastProtocolListenerTest {
         public boolean canHandle(ProtocolMessage msg) {
             return true;
         }
-        
+
         public List<ProtocolMessage> getMessages() {
             return messages;
         }
-        
+
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderImplTest.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderImplTest.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderImplTest.java
index 1c5ba9e..19834ae 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderImplTest.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderImplTest.java
@@ -16,9 +16,6 @@
  */
 package org.apache.nifi.cluster.protocol.impl;
 
-import org.apache.nifi.cluster.protocol.impl.ClusterServiceLocator;
-import org.apache.nifi.cluster.protocol.impl.SocketProtocolListener;
-import org.apache.nifi.cluster.protocol.impl.NodeProtocolSenderImpl;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.fail;
 import static org.mockito.Matchers.any;
@@ -58,104 +55,102 @@ import org.junit.Test;
 import org.mockito.invocation.InvocationOnMock;
 import org.mockito.stubbing.Answer;
 
-/**
- * @author unattributed
- */
 @Ignore("Randomly tests... probably timing-specific")
 public class NodeProtocolSenderImplTest {
-    
+
     private SocketProtocolListener listener;
-    
+
     private NodeProtocolSenderImpl sender;
-    
+
     private DiscoverableService service;
-    
+
     private ServerSocketConfiguration serverSocketConfiguration;
-    
+
     private ClusterServiceLocator mockServiceLocator;
-    
+
     private ProtocolHandler mockHandler;
-    
+
     private NodeIdentifier nodeIdentifier;
-    
+
     @Before
     public void setup() throws IOException {
-        
+
         serverSocketConfiguration = new ServerSocketConfiguration();
 
         mockServiceLocator = mock(ClusterServiceLocator.class);
         mockHandler = mock(ProtocolHandler.class);
-        
+
         nodeIdentifier = new NodeIdentifier("1", "localhost", 1234, "localhost", 5678);
-        
+
         ProtocolContext protocolContext = new JaxbProtocolContext(JaxbProtocolUtils.JAXB_CONTEXT);
-        
+
         listener = new SocketProtocolListener(5, 0, serverSocketConfiguration, protocolContext);
         listener.setShutdownListenerSeconds(3);
         listener.addHandler(mockHandler);
         listener.start();
-        
+
         service = new DiscoverableServiceImpl("some-service", new InetSocketAddress("localhost", listener.getPort()));
-        
+
         SocketConfiguration socketConfiguration = new SocketConfiguration();
         socketConfiguration.setReuseAddress(true);
         sender = new NodeProtocolSenderImpl(mockServiceLocator, socketConfiguration, protocolContext);
     }
-    
+
     @After
     public void teardown() throws IOException {
-        if(listener.isRunning()) {
+        if (listener.isRunning()) {
             listener.stop();
         }
     }
-    
+
     @Test
     public void testConnect() throws Exception {
-        
+
         when(mockServiceLocator.getService()).thenReturn(service);
         when(mockHandler.canHandle(any(ProtocolMessage.class))).thenReturn(Boolean.TRUE);
         ConnectionResponseMessage mockMessage = new ConnectionResponseMessage();
-        mockMessage.setConnectionResponse(new ConnectionResponse(nodeIdentifier, new StandardDataFlow("flow".getBytes("UTF-8"), new byte[0], new byte[0]), false, null, null, UUID.randomUUID().toString()));
+        mockMessage.setConnectionResponse(new ConnectionResponse(nodeIdentifier,
+                new StandardDataFlow("flow".getBytes("UTF-8"), new byte[0], new byte[0]), false, null, null, UUID.randomUUID().toString()));
         when(mockHandler.handle(any(ProtocolMessage.class))).thenReturn(mockMessage);
-        
+
         ConnectionRequestMessage request = new ConnectionRequestMessage();
         request.setConnectionRequest(new ConnectionRequest(nodeIdentifier));
         ConnectionResponseMessage response = sender.requestConnection(request);
         assertNotNull(response);
     }
-    
+
     @Test(expected = UnknownServiceAddressException.class)
     public void testConnectNoClusterManagerAddress() throws Exception {
-        
+
         when(mockServiceLocator.getService()).thenReturn(null);
         when(mockHandler.canHandle(any(ProtocolMessage.class))).thenReturn(Boolean.TRUE);
         when(mockHandler.handle(any(ProtocolMessage.class))).thenReturn(new ConnectionResponseMessage());
-        
+
         ConnectionRequestMessage request = new ConnectionRequestMessage();
         request.setConnectionRequest(new ConnectionRequest(nodeIdentifier));
 
         sender.requestConnection(request);
         fail("failed to throw exception");
     }
-    
+
     @Test(expected = ProtocolException.class)
     public void testConnectBadResponse() throws Exception {
-        
+
         when(mockServiceLocator.getService()).thenReturn(service);
         when(mockHandler.canHandle(any(ProtocolMessage.class))).thenReturn(Boolean.TRUE);
         when(mockHandler.handle(any(ProtocolMessage.class))).thenReturn(new PingMessage());
-        
+
         ConnectionRequestMessage request = new ConnectionRequestMessage();
         request.setConnectionRequest(new ConnectionRequest(nodeIdentifier));
-        
+
         sender.requestConnection(request);
         fail("failed to throw exception");
-        
+
     }
-    
+
     @Test(expected = ProtocolException.class)
     public void testConnectDelayedResponse() throws Exception {
-        
+
         final int time = 250;
         sender.getSocketConfiguration().setSocketTimeout(time);
         when(mockServiceLocator.getService()).thenReturn(service);
@@ -172,28 +167,28 @@ public class NodeProtocolSenderImplTest {
 
         sender.requestConnection(request);
         fail("failed to throw exception");
-        
+
     }
-    
+
     @Test
     public void testHeartbeat() throws Exception {
-        
+
         when(mockServiceLocator.getService()).thenReturn(service);
         when(mockHandler.canHandle(any(ProtocolMessage.class))).thenReturn(Boolean.TRUE);
         when(mockHandler.handle(any(ProtocolMessage.class))).thenReturn(null);
-        
+
         HeartbeatMessage hb = new HeartbeatMessage();
-        hb.setHeartbeat(new Heartbeat(new NodeIdentifier("id", "localhost", 3, "localhost", 4), false, false, new byte[] {1, 2, 3}));
+        hb.setHeartbeat(new Heartbeat(new NodeIdentifier("id", "localhost", 3, "localhost", 4), false, false, new byte[]{1, 2, 3}));
         sender.heartbeat(hb);
     }
-    
+
     @Test
     public void testNotifyControllerStartupFailure() throws Exception {
-        
+
         when(mockServiceLocator.getService()).thenReturn(service);
         when(mockHandler.canHandle(any(ProtocolMessage.class))).thenReturn(Boolean.TRUE);
         when(mockHandler.handle(any(ProtocolMessage.class))).thenReturn(null);
-        
+
         ControllerStartupFailureMessage msg = new ControllerStartupFailureMessage();
         msg.setNodeId(new NodeIdentifier("some-id", "some-addr", 1, "some-addr", 1));
         msg.setExceptionMessage("some exception");

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/testutils/ReflexiveProtocolHandler.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/testutils/ReflexiveProtocolHandler.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/testutils/ReflexiveProtocolHandler.java
index 4e3b932..803797b 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/testutils/ReflexiveProtocolHandler.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/test/java/org/apache/nifi/cluster/protocol/impl/testutils/ReflexiveProtocolHandler.java
@@ -26,9 +26,9 @@ import org.apache.nifi.cluster.protocol.message.ProtocolMessage;
  * @author unattributed
  */
 public class ReflexiveProtocolHandler implements ProtocolHandler {
-    
+
     private List<ProtocolMessage> messages = new ArrayList<>();
-        
+
     @Override
     public ProtocolMessage handle(ProtocolMessage msg) throws ProtocolException {
         messages.add(msg);
@@ -43,5 +43,5 @@ public class ReflexiveProtocolHandler implements ProtocolHandler {
     public List<ProtocolMessage> getMessages() {
         return messages;
     }
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/pom.xml
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/pom.xml b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/pom.xml
index 7b28bbe..63c07c0 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/pom.xml
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/pom.xml
@@ -43,8 +43,8 @@
             <artifactId>nifi-api</artifactId>
         </dependency>
         <dependency>
-        	<groupId>org.apache.nifi</groupId>
-        	<artifactId>nifi-site-to-site-client</artifactId>
+            <groupId>org.apache.nifi</groupId>
+            <artifactId>nifi-site-to-site-client</artifactId>
         </dependency>
         <dependency>
             <groupId>org.apache.commons</groupId>

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/connectable/Connectable.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/connectable/Connectable.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/connectable/Connectable.java
index 3d5c75d..7c40092 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/connectable/Connectable.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/connectable/Connectable.java
@@ -46,7 +46,7 @@ public interface Connectable extends Triggerable {
     /**
      * Returns the ProcessorRelationship whose name is given
      *
-     * @param relationshipName
+     * @param relationshipName name
      * @return a ProcessorRelationship whose name is given, or <code>null</code>
      * if none exists
      */
@@ -69,7 +69,7 @@ public interface Connectable extends Triggerable {
 
     /**
      *
-     * @param connection
+     * @param connection to remove
      * @throws IllegalStateException if the given Connection is not registered
      * to <code>this</code>.
      */
@@ -79,8 +79,8 @@ public interface Connectable extends Triggerable {
      * Updates any internal state that depends on the given connection. The
      * given connection will share the same ID as the old connection.
      *
-     * @param newConnection
-     * @throws IllegalStateException
+     * @param newConnection new connection
+     * @throws IllegalStateException ise
      */
     void updateConnection(Connection newConnection) throws IllegalStateException;
 
@@ -98,7 +98,7 @@ public interface Connectable extends Triggerable {
     Set<Connection> getConnections();
 
     /**
-     * @param relationship
+     * @param relationship to get connections for
      * @return a <code>Set</code> of all <code>Connection</code>s that contain
      * the given relationship for which this <code>Connectable</code> is the
      * source
@@ -106,16 +106,14 @@ public interface Connectable extends Triggerable {
     Set<Connection> getConnections(Relationship relationship);
 
     /**
-     * Returns the position on the graph where this Connectable is located
-     *
-     * @return
+     * @return the position on the graph where this Connectable is located
      */
     Position getPosition();
 
     /**
      * Updates this component's position on the graph
      *
-     * @param position
+     * @param position new position
      */
     void setPosition(Position position);
 
@@ -127,7 +125,8 @@ public interface Connectable extends Triggerable {
     /**
      * Sets the name of this Connectable so that its name will be visible on the
      * UI
-     * @param name
+     *
+     * @param name new name
      */
     void setName(String name);
 
@@ -138,31 +137,28 @@ public interface Connectable extends Triggerable {
 
     /**
      * Sets the comments of this Connectable.
-     * @param comments
+     *
+     * @param comments of this Connectable
      */
     void setComments(String comments);
 
     /**
-     * If true,
+     * @return If true,
      * {@link #onTrigger(nifi.processor.ProcessContext, nifi.processor.ProcessSessionFactory)}
      * should be called even when this Connectable has no FlowFiles queued for
      * processing
-     *
-     * @return
      */
     boolean isTriggerWhenEmpty();
 
     /**
-     * Returns the ProcessGroup to which this <code>Connectable</code> belongs
-     *
-     * @return
+     * @return the ProcessGroup to which this <code>Connectable</code> belongs
      */
     ProcessGroup getProcessGroup();
 
     /**
      * Sets the new ProcessGroup to which this <code>Connectable</code> belongs
      *
-     * @param group
+     * @param group new group
      */
     void setProcessGroup(ProcessGroup group);
 
@@ -177,15 +173,13 @@ public interface Connectable extends Triggerable {
     boolean isAutoTerminated(Relationship relationship);
 
     /**
-     * Indicates whether flow file content made by this connectable must be
-     * persisted
-     *
-     * @return 
+     * @return Indicates whether flow file content made by this connectable must
+     * be persisted
      */
     boolean isLossTolerant();
 
     /**
-     * @param lossTolerant
+     * @param lossTolerant true if it is
      */
     void setLossTolerant(boolean lossTolerant);
 
@@ -195,41 +189,33 @@ public interface Connectable extends Triggerable {
     ConnectableType getConnectableType();
 
     /**
-     * Returns the any validation errors for this connectable.
-     *
-     * @return
+     * @return any validation errors for this connectable
      */
     Collection<ValidationResult> getValidationErrors();
 
     /**
-     * Returns the amount of time for which a FlowFile should be penalized when
+     * @param timeUnit unit over which to interpret the duration
+     * @return the amount of time for which a FlowFile should be penalized when
      * {@link ProcessSession#penalize(nifi.flowfile.FlowFile)} is called
-     *
-     * @param timeUnit
-     * @return
      */
     long getPenalizationPeriod(final TimeUnit timeUnit);
 
     /**
-     * Returns a string representation for which a FlowFile should be penalized
+     * @return a string representation for which a FlowFile should be penalized
      * when {@link ProcessSession#penalize(nifi.flowfile.FlowFile)} is called
-     *
-     * @return
      */
     String getPenalizationPeriod();
 
     /**
      * @param timeUnit determines the unit of time to represent the yield
      * period.
-     * @return
+     * @return yield period
      */
     long getYieldPeriod(TimeUnit timeUnit);
 
     /**
-     * returns the string representation for this Connectable's configured yield
+     * @return the string representation for this Connectable's configured yield
      * period
-     *
-     * @return
      */
     String getYieldPeriod();
 
@@ -238,14 +224,15 @@ public interface Connectable extends Triggerable {
      * scheduled when the processor calls
      * {@link nifi.processor.ProcessContext#yield() ProcessContext.yield()}
      *
-     * @param yieldPeriod
+     * @param yieldPeriod new yield period
      */
     void setYieldPeriod(String yieldPeriod);
 
     /**
      * Updates the amount of time that this Connectable will penalize FlowFiles
      * when {@link ProcessSession#penalize(nifi.flowfile.FlowFile)} is called
-     * @param penalizationPeriod
+     *
+     * @param penalizationPeriod new period
      */
     void setPenalizationPeriod(String penalizationPeriod);
 
@@ -258,18 +245,14 @@ public interface Connectable extends Triggerable {
     void yield();
 
     /**
-     * Returns the time in milliseconds since Epoch at which this Connectable
+     * @return the time in milliseconds since Epoch at which this Connectable
      * should no longer yield its threads
-     *
-     * @return
      */
     long getYieldExpiration();
 
     /**
-     * Specifies whether or not this component is considered side-effect free,
-     * with respect to external systems.
-     *
-     * @return
+     * @return Specifies whether or not this component is considered side-effect free,
+     * with respect to external systems
      */
     boolean isSideEffectFree();
 

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/AbstractConfiguredComponent.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/AbstractConfiguredComponent.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/AbstractConfiguredComponent.java
index c44161f..978c612 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/AbstractConfiguredComponent.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/AbstractConfiguredComponent.java
@@ -150,16 +150,16 @@ public abstract class AbstractConfiguredComponent implements ConfigurableCompone
                 final PropertyDescriptor descriptor = component.getPropertyDescriptor(name);
                 String value = null;
                 if (!descriptor.isRequired() && (value = properties.remove(descriptor)) != null) {
-                	
-                	if ( descriptor.getControllerServiceDefinition() != null ) {
-                		if (value != null) {
+
+                    if (descriptor.getControllerServiceDefinition() != null) {
+                        if (value != null) {
                             final ControllerServiceNode oldNode = serviceProvider.getControllerServiceNode(value);
                             if (oldNode != null) {
                                 oldNode.removeReference(this);
                             }
                         }
-                	}
-                	
+                    }
+
                     component.onPropertyModified(descriptor, value, null);
                     return true;
                 }
@@ -261,12 +261,11 @@ public abstract class AbstractConfiguredComponent implements ConfigurableCompone
         return true;
     }
 
-    
     @Override
     public Collection<ValidationResult> getValidationErrors() {
         return getValidationErrors(Collections.<String>emptySet());
     }
-    
+
     public Collection<ValidationResult> getValidationErrors(final Set<String> serviceIdentifiersNotToValidate) {
         final List<ValidationResult> results = new ArrayList<>();
         lock.lock();

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/AbstractPort.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/AbstractPort.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/AbstractPort.java
index e1d2dd4..50ba12a 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/AbstractPort.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/AbstractPort.java
@@ -294,8 +294,8 @@ public abstract class AbstractPort implements Port {
      * Verify that removing this connection will not prevent this Port from
      * still being connected via each relationship
      *
-     * @param connection
-     * @return
+     * @param connection to test for removal
+     * @return true if can be removed
      */
     private boolean canConnectionBeRemoved(final Connection connection) {
         final Connectable source = connection.getSource();
@@ -368,11 +368,6 @@ public abstract class AbstractPort implements Port {
         }
     }
 
-    /**
-     * Indicates whether or not this Port is valid.
-     *
-     * @return
-     */
     @Override
     public abstract boolean isValid();
 
@@ -399,18 +394,11 @@ public abstract class AbstractPort implements Port {
         concurrentTaskCount.set(taskCount);
     }
 
-    /**
-     * @return the number of tasks that may execute concurrently for this
-     * processor
-     */
     @Override
     public int getMaxConcurrentTasks() {
         return concurrentTaskCount.get();
     }
 
-    /**
-     *
-     */
     @Override
     public void shutdown() {
         scheduledState.set(ScheduledState.STOPPED);
@@ -450,13 +438,6 @@ public abstract class AbstractPort implements Port {
         return type;
     }
 
-    /**
-     * Updates the amount of time that this processor should avoid being
-     * scheduled when the processor calls
-     * {@link nifi.processor.ProcessContext#yield() ProcessContext.yield()}
-     *
-     * @param yieldPeriod
-     */
     @Override
     public void setYieldPeriod(final String yieldPeriod) {
         final long yieldMillis = FormatUtils.getTimeDuration(requireNonNull(yieldPeriod), TimeUnit.MILLISECONDS);
@@ -466,9 +447,6 @@ public abstract class AbstractPort implements Port {
         this.yieldPeriod.set(yieldPeriod);
     }
 
-    /**
-     * @param schedulingPeriod
-     */
     @Override
     public void setScheduldingPeriod(final String schedulingPeriod) {
         final long schedulingNanos = FormatUtils.getTimeDuration(requireNonNull(schedulingPeriod), TimeUnit.NANOSECONDS);
@@ -490,12 +468,6 @@ public abstract class AbstractPort implements Port {
         return penalizationPeriod.get();
     }
 
-    /**
-     * Causes the processor not to be scheduled for some period of time. This
-     * duration can be obtained and set via the
-     * {@link #getYieldPeriod(TimeUnit)} and
-     * {@link #setYieldPeriod(long, TimeUnit)} methods.
-     */
     @Override
     public void yield() {
         final long yieldMillis = getYieldPeriod(TimeUnit.MILLISECONDS);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ConfiguredComponent.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ConfiguredComponent.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ConfiguredComponent.java
index 5b95524..8b2794d 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ConfiguredComponent.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ConfiguredComponent.java
@@ -55,9 +55,7 @@ public interface ConfiguredComponent {
     boolean isValid();
 
     /**
-     * Returns the any validation errors for this connectable.
-     *
-     * @return
+     * @return the any validation errors for this connectable
      */
     Collection<ValidationResult> getValidationErrors();
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ContentAvailability.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ContentAvailability.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ContentAvailability.java
index eee878e..f91fe8f 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ContentAvailability.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ContentAvailability.java
@@ -23,43 +23,33 @@ package org.apache.nifi.controller;
 public interface ContentAvailability {
 
     /**
-     * Returns a boolean indicating whether or not the Input content is
+     * @return a boolean indicating whether or not the Input content is
      * available
-     *
-     * @return
      */
     boolean isInputAvailable();
 
     /**
-     * Returns a boolean indicating whether or not the Output content is
+     * @return a boolean indicating whether or not the Output content is
      * available
-     *
-     * @return
      */
     boolean isOutputAvailable();
 
     /**
-     * Returns <code>true</code> if the Input content is the same as the Output
+     * @return <code>true</code> if the Input content is the same as the Output
      * content
-     *
-     * @return
      */
     boolean isContentSame();
 
     /**
-     * Returns a boolean indicating whether or not the content is replayable. If
+     * @return a boolean indicating whether or not the content is replayable. If
      * this returns <code>false</code>, the reason that replay is not available
-     * can be determined by calling {@link #getReasonNotReplayable()}.
-     *
-     * @return
+     * can be determined by calling {@link #getReasonNotReplayable()}
      */
     boolean isReplayable();
 
     /**
-     * Returns the reason that the content cannot be replayed, or
-     * <code>null</code> if the content can be replayed.
-     *
-     * @return
+     * @return the reason that the content cannot be replayed, or
+     * <code>null</code> if the content can be replayed
      */
     String getReasonNotReplayable();
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ProcessScheduler.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ProcessScheduler.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ProcessScheduler.java
index c3b6613..ee8d9b4 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ProcessScheduler.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ProcessScheduler.java
@@ -35,7 +35,7 @@ public interface ProcessScheduler {
      * are annotated with the {@link OnScheduled} annotation. If the Processor
      * is already scheduled to run, does nothing.
      *
-     * @param procNode
+     * @param procNode to start
      * @throws IllegalStateException if the Processor is disabled
      */
     void startProcessor(ProcessorNode procNode);
@@ -46,7 +46,8 @@ public interface ProcessScheduler {
      * are annotated with the {@link OnUnscheduled} annotation. This does not
      * interrupt any threads that are currently running within the given
      * Processor. If the Processor is not scheduled to run, does nothing.
-     * @param procNode
+     *
+     * @param procNode to stop
      */
     void stopProcessor(ProcessorNode procNode);
 
@@ -54,7 +55,7 @@ public interface ProcessScheduler {
      * Starts scheduling the given Port to run. If the Port is already scheduled
      * to run, does nothing.
      *
-     * @param port
+     * @param port to start
      *
      * @throws IllegalStateException if the Port is disabled
      */
@@ -66,7 +67,7 @@ public interface ProcessScheduler {
      * interrupt any threads that are currently running within the given Port.
      * If the Port is not scheduled to run, does nothing.
      *
-     * @param port
+     * @param port to stop
      */
     void stopPort(Port port);
 
@@ -74,7 +75,7 @@ public interface ProcessScheduler {
      * Starts scheduling the given Funnel to run. If the funnel is already
      * scheduled to run, does nothing.
      *
-     * @param funnel
+     * @param funnel to start
      *
      * @throws IllegalStateException if the Funnel is disabled
      */
@@ -85,7 +86,7 @@ public interface ProcessScheduler {
      * threads that are currently running within the given funnel. If the funnel
      * is not scheduled to run, does nothing.
      *
-     * @param funnel
+     * @param funnel to stop
      */
     void stopFunnel(Funnel funnel);
 
@@ -102,27 +103,23 @@ public interface ProcessScheduler {
     void disableProcessor(ProcessorNode procNode);
 
     /**
-     * Returns the number of threads currently active for the given
-     * <code>Connectable</code>.
-     *
-     * @param scheduled
-     * @return
+     * @param scheduled scheduled component
+     * @return the number of threads currently active for the given
+     * <code>Connectable</code>
      */
     int getActiveThreadCount(Object scheduled);
 
     /**
-     * Returns a boolean indicating whether or not the given object is scheduled
+     * @param scheduled component to test
+     * @return a boolean indicating whether or not the given object is scheduled
      * to run
-     *
-     * @param scheduled
-     * @return
      */
     boolean isScheduled(Object scheduled);
 
     /**
      * Registers a relevant event for an Event-Driven worker
      *
-     * @param worker
+     * @param worker to register
      */
     void registerEvent(Connectable worker);
 
@@ -130,8 +127,8 @@ public interface ProcessScheduler {
      * Notifies the ProcessScheduler of how many threads are available to use
      * for the given {@link SchedulingStrategy}
      *
-     * @param strategy
-     * @param maxThreadCount
+     * @param strategy scheduling strategy
+     * @param maxThreadCount max threads
      */
     void setMaxThreadCount(SchedulingStrategy strategy, int maxThreadCount);
 
@@ -139,31 +136,36 @@ public interface ProcessScheduler {
      * Notifies the Scheduler that it should stop scheduling the given component
      * until its yield duration has expired
      *
-     * @param procNode
+     * @param procNode processor
      */
     void yield(ProcessorNode procNode);
-    
+
     /**
      * Stops scheduling the given Reporting Task to run
-     * @param taskNode
+     *
+     * @param taskNode to unschedule
      */
     void unschedule(ReportingTaskNode taskNode);
-    
+
     /**
      * Begins scheduling the given Reporting Task to run
-     * @param taskNode
+     *
+     * @param taskNode to schedule
      */
     void schedule(ReportingTaskNode taskNode);
-    
+
     /**
-     * Enables the Controller Service so that it can be used by Reporting Tasks and Processors
-     * @param service
+     * Enables the Controller Service so that it can be used by Reporting Tasks
+     * and Processors
+     *
+     * @param service to enable
      */
     void enableControllerService(ControllerServiceNode service);
-    
+
     /**
      * Disables the Controller Service so that it can be updated
-     * @param service
+     *
+     * @param service to disable
      */
     void disableControllerService(ControllerServiceNode service);
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ProcessorNode.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ProcessorNode.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ProcessorNode.java
index 3189edd..66967ba 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ProcessorNode.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ProcessorNode.java
@@ -79,18 +79,20 @@ public abstract class ProcessorNode extends AbstractConfiguredComponent implemen
     public abstract void setStyle(Map<String, String> style);
 
     /**
-     * Returns the number of threads (concurrent tasks) currently being used by this Processor
-     * @return
+     * @return the number of threads (concurrent tasks) currently being used by
+     * this Processor
      */
     public abstract int getActiveThreadCount();
-    
+
     /**
      * Verifies that this Processor can be started if the provided set of
-     * services are enabled. This is introduced because we need to verify that all components
-     * can be started before starting any of them. In order to do that, we need to know that this
-     * component can be started if the given services are enabled, as we will then enable the given 
-     * services before starting this component.
-     * @param ignoredReferences
+     * services are enabled. This is introduced because we need to verify that
+     * all components can be started before starting any of them. In order to do
+     * that, we need to know that this component can be started if the given
+     * services are enabled, as we will then enable the given services before
+     * starting this component.
+     *
+     * @param ignoredReferences to ignore
      */
     public abstract void verifyCanStart(Set<ControllerServiceNode> ignoredReferences);
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ReportingTaskNode.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ReportingTaskNode.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ReportingTaskNode.java
index c932f30..c2adf01 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ReportingTaskNode.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ReportingTaskNode.java
@@ -40,7 +40,8 @@ public interface ReportingTaskNode extends ConfiguredComponent {
 
     /**
      * Updates how often the ReportingTask should be triggered to run
-     * @param schedulingPeriod
+     *
+     * @param schedulingPeriod new period
      */
     void setScheduldingPeriod(String schedulingPeriod);
 
@@ -53,43 +54,48 @@ public interface ReportingTaskNode extends ConfiguredComponent {
     boolean isRunning();
 
     /**
-     * Returns the number of threads (concurrent tasks) currently being used by this ReportingTask
-     * @return
+     * @return the number of threads (concurrent tasks) currently being used by
+     * this ReportingTask
      */
     int getActiveThreadCount();
-    
+
     /**
-     * Indicates the {@link ScheduledState} of this <code>ReportingTask</code>. A
-     * value of stopped does NOT indicate that the <code>ReportingTask</code> has
-     * no active threads, only that it is not currently scheduled to be given
-     * any more threads. To determine whether or not the
+     * @return Indicates the {@link ScheduledState} of this <code>ReportingTask</code>.
+     * A value of stopped does NOT indicate that the <code>ReportingTask</code>
+     * has no active threads, only that it is not currently scheduled to be
+     * given any more threads. To determine whether or not the
      * <code>ReportingTask</code> has any active threads, see
-     * {@link ProcessScheduler#getActiveThreadCount(ReportingTask)}.
-     *
-     * @return
+     * {@link ProcessScheduler#getActiveThreadCount(ReportingTask)}
      */
     ScheduledState getScheduledState();
-    
+
     void setScheduledState(ScheduledState state);
-    
+
     String getComments();
-    
+
     void setComments(String comment);
-    
+
     /**
      * Verifies that this Reporting Task can be enabled if the provided set of
-     * services are enabled. This is introduced because we need to verify that all components
-     * can be started before starting any of them. In order to do that, we need to know that this
-     * component can be started if the given services are enabled, as we will then enable the given 
-     * services before starting this component.
-     * @param ignoredReferences
+     * services are enabled. This is introduced because we need to verify that
+     * all components can be started before starting any of them. In order to do
+     * that, we need to know that this component can be started if the given
+     * services are enabled, as we will then enable the given services before
+     * starting this component.
+     *
+     * @param ignoredReferences to ignore
      */
     void verifyCanStart(Set<ControllerServiceNode> ignoredReferences);
-    
+
     void verifyCanStart();
+
     void verifyCanStop();
+
     void verifyCanDisable();
+
     void verifyCanEnable();
+
     void verifyCanDelete();
+
     void verifyCanUpdate();
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/StandardFlowFileQueue.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/StandardFlowFileQueue.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/StandardFlowFileQueue.java
index 59d2308..572f8d6 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/StandardFlowFileQueue.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/StandardFlowFileQueue.java
@@ -212,7 +212,7 @@ public final class StandardFlowFileQueue implements FlowFileQueue {
     /**
      * MUST be called with lock held
      *
-     * @return
+     * @return size of queue
      */
     private QueueSize getQueueSize() {
         final QueueSize unacknowledged = unacknowledgedSizeRef.get();
@@ -350,7 +350,7 @@ public final class StandardFlowFileQueue implements FlowFileQueue {
     /**
      * MUST be called with either the read or write lock held
      *
-     * @return
+     * @return true if full
      */
     private boolean determineIfFull() {
         final long maxSize = maximumQueueObjectCount;
@@ -1011,7 +1011,7 @@ public final class StandardFlowFileQueue implements FlowFileQueue {
             if (record == null || record.isPenalized()) {
                 // not enough unpenalized records to pull. Put all records back and return
                 activeQueue.addAll(buffer);
-                if ( record != null ) {
+                if (record != null) {
                     activeQueue.add(record);
                 }
                 return;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/StandardFunnel.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/StandardFunnel.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/StandardFunnel.java
index 3bdfd20..0effbaf 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/StandardFunnel.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/StandardFunnel.java
@@ -263,7 +263,7 @@ public class StandardFunnel implements Funnel {
     /**
      * Throws {@link UnsupportedOperationException}
      *
-     * @param name
+     * @param name new name
      */
     @Override
     public void setName(final String name) {
@@ -403,7 +403,7 @@ public class StandardFunnel implements Funnel {
      * scheduled when the processor calls
      * {@link nifi.processor.ProcessContext#yield() ProcessContext.yield()}
      *
-     * @param yieldPeriod
+     * @param yieldPeriod new period
      */
     @Override
     public void setYieldPeriod(final String yieldPeriod) {
@@ -414,9 +414,6 @@ public class StandardFunnel implements Funnel {
         this.yieldPeriod.set(yieldPeriod);
     }
 
-    /**
-     * @param schedulingPeriod
-     */
     @Override
     public void setScheduldingPeriod(final String schedulingPeriod) {
         final long schedulingNanos = FormatUtils.getTimeDuration(requireNonNull(schedulingPeriod), TimeUnit.NANOSECONDS);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ValidationContextFactory.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ValidationContextFactory.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ValidationContextFactory.java
index 09479d5..a7118d4 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ValidationContextFactory.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/ValidationContextFactory.java
@@ -25,7 +25,7 @@ import org.apache.nifi.components.ValidationContext;
 public interface ValidationContextFactory {
 
     ValidationContext newValidationContext(Map<PropertyDescriptor, String> properties, String annotationData);
-    
+
     ValidationContext newValidationContext(Set<String> serviceIdentifiersToNotValidate, Map<PropertyDescriptor, String> properties, String annotationData);
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/exception/ControllerServiceAlreadyExistsException.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/exception/ControllerServiceAlreadyExistsException.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/exception/ControllerServiceAlreadyExistsException.java
index 0ff68b0..327be36 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/exception/ControllerServiceAlreadyExistsException.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/exception/ControllerServiceAlreadyExistsException.java
@@ -20,10 +20,6 @@ public class ControllerServiceAlreadyExistsException extends RuntimeException {
 
     private static final long serialVersionUID = -544424320587059277L;
 
-    /**
-     * Constructs a default exception
-     * @param id
-     */
     public ControllerServiceAlreadyExistsException(final String id) {
         super("A Controller Service already exists with ID " + id);
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/exception/ControllerServiceInstantiationException.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/exception/ControllerServiceInstantiationException.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/exception/ControllerServiceInstantiationException.java
index 18cfcda..f2118d7 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/exception/ControllerServiceInstantiationException.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/exception/ControllerServiceInstantiationException.java
@@ -20,31 +20,18 @@ public class ControllerServiceInstantiationException extends RuntimeException {
 
     private static final long serialVersionUID = -544424320587059277L;
 
-    /**
-     * Constructs a default exception
-     */
     public ControllerServiceInstantiationException() {
         super();
     }
 
-    /**
-     * @param message
-     */
     public ControllerServiceInstantiationException(String message) {
         super(message);
     }
 
-    /**
-     * @param cause
-     */
     public ControllerServiceInstantiationException(Throwable cause) {
         super(cause);
     }
 
-    /**
-     * @param message
-     * @param cause
-     */
     public ControllerServiceInstantiationException(String message, Throwable cause) {
         super(message, cause);
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/reporting/ReportingTaskProvider.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/reporting/ReportingTaskProvider.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/reporting/ReportingTaskProvider.java
index bb6f3f7..9f16798 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/reporting/ReportingTaskProvider.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/reporting/ReportingTaskProvider.java
@@ -20,84 +20,92 @@ import java.util.Set;
 import org.apache.nifi.controller.ReportingTaskNode;
 
 /**
- * A ReportingTaskProvider is responsible for providing management of, and access to, Reporting Tasks
+ * A ReportingTaskProvider is responsible for providing management of, and
+ * access to, Reporting Tasks
  */
 public interface ReportingTaskProvider {
 
     /**
      * Creates a new instance of a reporting task
-     * 
-     * @param type the type (fully qualified class name) of the reporting task to instantiate
+     *
+     * @param type the type (fully qualified class name) of the reporting task
+     * to instantiate
      * @param id the identifier for the Reporting Task
-     * @param firstTimeAdded whether or not this is the first time that the reporting task is being added
-     * to the flow. I.e., this will be true only when the user adds the reporting task to the flow, not when
-     * the flow is being restored after a restart of the software
-     * 
+     * @param firstTimeAdded whether or not this is the first time that the
+     * reporting task is being added to the flow. I.e., this will be true only
+     * when the user adds the reporting task to the flow, not when the flow is
+     * being restored after a restart of the software
+     *
      * @return the ReportingTaskNode that is used to manage the reporting task
-     * 
-     * @throws ReportingTaskInstantiationException if unable to create the Reporting Task
+     *
+     * @throws ReportingTaskInstantiationException if unable to create the
+     * Reporting Task
      */
     ReportingTaskNode createReportingTask(String type, String id, boolean firstTimeAdded) throws ReportingTaskInstantiationException;
-    
+
     /**
-     * Returns the reporting task that has the given identifier, or <code>null</code> if no reporting task
-     * exists with that ID.
-     * 
-     * @param identifier
-     * @return
+     * @param identifier of node
+     * @return the reporting task that has the given identifier, or
+     * <code>null</code> if no reporting task exists with that ID
      */
     ReportingTaskNode getReportingTaskNode(String identifier);
-    
+
     /**
-     * Returns a Set of all Reporting Tasks that exist for this service provider.
-     * @return
+     * @return a Set of all Reporting Tasks that exist for this service
+     * provider
      */
     Set<ReportingTaskNode> getAllReportingTasks();
-    
+
     /**
      * Removes the given reporting task from the flow
-     * 
+     *
      * @param reportingTask
-     * 
-     * @throws IllegalStateException if the reporting task cannot be removed because it is not stopped, or
-     * if the reporting task is not known in the flow
+     *
+     * @throws IllegalStateException if the reporting task cannot be removed
+     * because it is not stopped, or if the reporting task is not known in the
+     * flow
      */
     void removeReportingTask(ReportingTaskNode reportingTask);
-    
+
     /**
-     * Begins scheduling the reporting task to run and invokes appropriate lifecycle methods
+     * Begins scheduling the reporting task to run and invokes appropriate
+     * lifecycle methods
+     *
      * @param reportingTask
-     * 
-     * @throws IllegalStateException if the ReportingTask's state is not STOPPED, or if the Reporting Task has active
-     * threads, or if the ReportingTask is not valid
+     *
+     * @throws IllegalStateException if the ReportingTask's state is not
+     * STOPPED, or if the Reporting Task has active threads, or if the
+     * ReportingTask is not valid
      */
     void startReportingTask(ReportingTaskNode reportingTask);
-    
+
     /**
-     * Stops scheduling the reporting task to run and invokes appropriate lifecycle methods
+     * Stops scheduling the reporting task to run and invokes appropriate
+     * lifecycle methods
+     *
      * @param reportingTask
-     * 
+     *
      * @throws IllegalStateException if the ReportingTask's state is not RUNNING
      */
     void stopReportingTask(ReportingTaskNode reportingTask);
-    
-    
+
     /**
      * Enables the reporting task to be scheduled to run
+     *
      * @param reportingTask
-     * 
-     * @throws IllegalStateException if the ReportingTask's state is not DISABLED
+     *
+     * @throws IllegalStateException if the ReportingTask's state is not
+     * DISABLED
      */
     void enableReportingTask(ReportingTaskNode reportingTask);
-    
-    
+
     /**
      * Disables the ability to schedul the reporting task to run
-     * 
+     *
      * @param reportingTask
-     * 
-     * @throws IllegalStateException if the ReportingTask's state is not STOPPED, or if the Reporting Task has active
-     * threads
+     *
+     * @throws IllegalStateException if the ReportingTask's state is not
+     * STOPPED, or if the Reporting Task has active threads
      */
     void disableReportingTask(ReportingTaskNode reportingTask);
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/repository/FlowFileEventRepository.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/repository/FlowFileEventRepository.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/repository/FlowFileEventRepository.java
index 2eb3caf..560dc05 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/repository/FlowFileEventRepository.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/repository/FlowFileEventRepository.java
@@ -19,24 +19,19 @@ package org.apache.nifi.controller.repository;
 import java.io.Closeable;
 import java.io.IOException;
 
-/**
- *
- * @author none
- */
 public interface FlowFileEventRepository extends Closeable {
 
     /**
      * Updates the repository to include a new FlowFile processing event
      *
-     * @param event
-     * @throws java.io.IOException
+     * @param event new event
+     * @throws java.io.IOException ioe
      */
     void updateRepository(FlowFileEvent event) throws IOException;
 
     /**
-     * Returns a report of processing activity since the given time
-     * @param sinceEpochMillis
-     * @return 
+     * @param sinceEpochMillis age of report
+     * @return a report of processing activity since the given time
      */
     RepositoryStatusReport reportTransferEvents(long sinceEpochMillis);
 
@@ -44,7 +39,7 @@ public interface FlowFileEventRepository extends Closeable {
      * Causes any flow file events of the given entry age in epoch milliseconds
      * or older to be purged from the repository
      *
-     * @param cutoffEpochMilliseconds
+     * @param cutoffEpochMilliseconds cutoff
      */
     void purgeTransferEvents(long cutoffEpochMilliseconds);
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceNode.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceNode.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceNode.java
index 50bf469..10933db 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceNode.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceNode.java
@@ -24,45 +24,52 @@ import org.apache.nifi.controller.ControllerService;
 public interface ControllerServiceNode extends ConfiguredComponent {
 
     ControllerService getProxiedControllerService();
-    
+
     ControllerService getControllerServiceImplementation();
 
     ControllerServiceState getState();
+
     void setState(ControllerServiceState state);
-    
+
     ControllerServiceReference getReferences();
 
     void addReference(ConfiguredComponent referringComponent);
 
     void removeReference(ConfiguredComponent referringComponent);
-    
+
     void setComments(String comment);
+
     String getComments();
-    
+
     void verifyCanEnable();
+
     void verifyCanDisable();
-    
+
     /**
-     * Verifies that this Controller Service can be disabled if the provided set of 
-     * services are also disabled. This is introduced because we can have an instance
-     * where A references B, which references C, which references A and we want
-     * to disable service C. In this case, the cycle needs to not cause us to fail, 
-     * so we want to verify that C can be disabled if A and B also are. 
-     * 
-     * @param ignoredReferences
+     * Verifies that this Controller Service can be disabled if the provided set
+     * of services are also disabled. This is introduced because we can have an
+     * instance where A references B, which references C, which references A and
+     * we want to disable service C. In this case, the cycle needs to not cause
+     * us to fail, so we want to verify that C can be disabled if A and B also
+     * are.
+     *
+     * @param ignoredReferences references to ignore
      */
     void verifyCanDisable(Set<ControllerServiceNode> ignoredReferences);
-    
+
     /**
-     * Verifies that this Controller Service can be enabled if the provided set of
-     * services are also enabled. This is introduced because we can have an instance where
-     * A reference B, which references C, which references A and we want to enable
-     * Service A. In this case, the cycle needs to not cause us to fail, so we want to verify
-     * that A can be enabled if A and B also are.
-     * @param ignoredReferences
+     * Verifies that this Controller Service can be enabled if the provided set
+     * of services are also enabled. This is introduced because we can have an
+     * instance where A reference B, which references C, which references A and
+     * we want to enable Service A. In this case, the cycle needs to not cause
+     * us to fail, so we want to verify that A can be enabled if A and B also
+     * are.
+     *
+     * @param ignoredReferences to ignore
      */
     void verifyCanEnable(Set<ControllerServiceNode> ignoredReferences);
-    
+
     void verifyCanDelete();
+
     void verifyCanUpdate();
 }


[03/11] incubator-nifi git commit: NIFI-271 checkpoint

Posted by jo...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceProvider.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceProvider.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceProvider.java
index d8f1338..a45bf76 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceProvider.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceProvider.java
@@ -61,9 +61,6 @@ import org.apache.nifi.util.ReflectionUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-/**
- *
- */
 public class StandardControllerServiceProvider implements ControllerServiceProvider {
 
     private static final Logger logger = LoggerFactory.getLogger(StandardControllerServiceProvider.class);
@@ -112,24 +109,24 @@ public class StandardControllerServiceProvider implements ControllerServiceProvi
             populateInterfaces(superClass, interfacesDefinedThusFar);
         }
     }
-    
+
     @Override
     public ControllerServiceNode createControllerService(final String type, final String id, final boolean firstTimeAdded) {
         if (type == null || id == null) {
             throw new NullPointerException();
         }
-        
+
         final ClassLoader currentContextClassLoader = Thread.currentThread().getContextClassLoader();
         try {
             final ClassLoader cl = ExtensionManager.getClassLoader(type);
             final Class<?> rawClass;
-            if ( cl == null ) {
+            if (cl == null) {
                 rawClass = Class.forName(type);
             } else {
                 Thread.currentThread().setContextClassLoader(cl);
                 rawClass = Class.forName(type, false, cl);
             }
-            
+
             final Class<? extends ControllerService> controllerServiceClass = rawClass.asSubclass(ControllerService.class);
 
             final ControllerService originalService = controllerServiceClass.newInstance();
@@ -138,11 +135,11 @@ public class StandardControllerServiceProvider implements ControllerServiceProvi
                 @Override
                 public Object invoke(final Object proxy, final Method method, final Object[] args) throws Throwable {
 
-                	final String methodName = method.getName();
-                	if("initialize".equals(methodName) || "onPropertyModified".equals(methodName)){
-                		throw new UnsupportedOperationException(method + " may only be invoked by the NiFi framework");
-                	}
-                	
+                    final String methodName = method.getName();
+                    if ("initialize".equals(methodName) || "onPropertyModified".equals(methodName)) {
+                        throw new UnsupportedOperationException(method + " may only be invoked by the NiFi framework");
+                    }
+
                     final ControllerServiceNode node = serviceNodeHolder.get();
                     final ControllerServiceState state = node.getState();
                     final boolean disabled = (state != ControllerServiceState.ENABLED); // only allow method call if service state is ENABLED.
@@ -166,7 +163,7 @@ public class StandardControllerServiceProvider implements ControllerServiceProvi
             };
 
             final ControllerService proxiedService;
-            if ( cl == null ) {
+            if (cl == null) {
                 proxiedService = (ControllerService) Proxy.newProxyInstance(getClass().getClassLoader(), getInterfaces(controllerServiceClass), invocationHandler);
             } else {
                 proxiedService = (ControllerService) Proxy.newProxyInstance(cl, getInterfaces(controllerServiceClass), invocationHandler);
@@ -181,8 +178,8 @@ public class StandardControllerServiceProvider implements ControllerServiceProvi
             final ControllerServiceNode serviceNode = new StandardControllerServiceNode(proxiedService, originalService, id, validationContextFactory, this);
             serviceNodeHolder.set(serviceNode);
             serviceNode.setName(rawClass.getSimpleName());
-            
-            if ( firstTimeAdded ) {
+
+            if (firstTimeAdded) {
                 try (final NarCloseable x = NarCloseable.withNarLoader()) {
                     ReflectionUtils.invokeMethodsWithAnnotation(OnAdded.class, originalService);
                 } catch (final Exception e) {
@@ -200,226 +197,227 @@ public class StandardControllerServiceProvider implements ControllerServiceProvi
             }
         }
     }
-    
-    
-    
+
     @Override
     public void disableReferencingServices(final ControllerServiceNode serviceNode) {
         // Get a list of all Controller Services that need to be disabled, in the order that they need to be
         // disabled.
         final List<ControllerServiceNode> toDisable = findRecursiveReferences(serviceNode, ControllerServiceNode.class);
         final Set<ControllerServiceNode> serviceSet = new HashSet<>(toDisable);
-        
-        for ( final ControllerServiceNode nodeToDisable : toDisable ) {
+
+        for (final ControllerServiceNode nodeToDisable : toDisable) {
             final ControllerServiceState state = nodeToDisable.getState();
-            
-            if ( state != ControllerServiceState.DISABLED && state != ControllerServiceState.DISABLING ) {
+
+            if (state != ControllerServiceState.DISABLED && state != ControllerServiceState.DISABLING) {
                 nodeToDisable.verifyCanDisable(serviceSet);
             }
         }
-        
+
         Collections.reverse(toDisable);
-        for ( final ControllerServiceNode nodeToDisable : toDisable ) {
+        for (final ControllerServiceNode nodeToDisable : toDisable) {
             final ControllerServiceState state = nodeToDisable.getState();
-            
-            if ( state != ControllerServiceState.DISABLED && state != ControllerServiceState.DISABLING ) {
+
+            if (state != ControllerServiceState.DISABLED && state != ControllerServiceState.DISABLING) {
                 disableControllerService(nodeToDisable);
             }
         }
     }
-    
-    
+
     @Override
     public void scheduleReferencingComponents(final ControllerServiceNode serviceNode) {
         // find all of the schedulable components (processors, reporting tasks) that refer to this Controller Service,
         // or a service that references this controller service, etc.
         final List<ProcessorNode> processors = findRecursiveReferences(serviceNode, ProcessorNode.class);
         final List<ReportingTaskNode> reportingTasks = findRecursiveReferences(serviceNode, ReportingTaskNode.class);
-        
+
         // verify that  we can start all components (that are not disabled) before doing anything
-        for ( final ProcessorNode node : processors ) {
-            if ( node.getScheduledState() != ScheduledState.DISABLED ) {
+        for (final ProcessorNode node : processors) {
+            if (node.getScheduledState() != ScheduledState.DISABLED) {
                 node.verifyCanStart();
             }
         }
-        for ( final ReportingTaskNode node : reportingTasks ) {
-            if ( node.getScheduledState() != ScheduledState.DISABLED ) {
+        for (final ReportingTaskNode node : reportingTasks) {
+            if (node.getScheduledState() != ScheduledState.DISABLED) {
                 node.verifyCanStart();
             }
         }
-        
+
         // start all of the components that are not disabled
-        for ( final ProcessorNode node : processors ) {
-            if ( node.getScheduledState() != ScheduledState.DISABLED ) {
+        for (final ProcessorNode node : processors) {
+            if (node.getScheduledState() != ScheduledState.DISABLED) {
                 node.getProcessGroup().startProcessor(node);
             }
         }
-        for ( final ReportingTaskNode node : reportingTasks ) {
-            if ( node.getScheduledState() != ScheduledState.DISABLED ) {
+        for (final ReportingTaskNode node : reportingTasks) {
+            if (node.getScheduledState() != ScheduledState.DISABLED) {
                 processScheduler.schedule(node);
             }
         }
     }
-    
+
     @Override
     public void unscheduleReferencingComponents(final ControllerServiceNode serviceNode) {
         // find all of the schedulable components (processors, reporting tasks) that refer to this Controller Service,
         // or a service that references this controller service, etc.
         final List<ProcessorNode> processors = findRecursiveReferences(serviceNode, ProcessorNode.class);
         final List<ReportingTaskNode> reportingTasks = findRecursiveReferences(serviceNode, ReportingTaskNode.class);
-        
+
         // verify that  we can stop all components (that are running) before doing anything
-        for ( final ProcessorNode node : processors ) {
-            if ( node.getScheduledState() == ScheduledState.RUNNING ) {
+        for (final ProcessorNode node : processors) {
+            if (node.getScheduledState() == ScheduledState.RUNNING) {
                 node.verifyCanStop();
             }
         }
-        for ( final ReportingTaskNode node : reportingTasks ) {
-            if ( node.getScheduledState() == ScheduledState.RUNNING ) {
+        for (final ReportingTaskNode node : reportingTasks) {
+            if (node.getScheduledState() == ScheduledState.RUNNING) {
                 node.verifyCanStop();
             }
         }
-        
+
         // stop all of the components that are running
-        for ( final ProcessorNode node : processors ) {
-            if ( node.getScheduledState() == ScheduledState.RUNNING ) {
+        for (final ProcessorNode node : processors) {
+            if (node.getScheduledState() == ScheduledState.RUNNING) {
                 node.getProcessGroup().stopProcessor(node);
             }
         }
-        for ( final ReportingTaskNode node : reportingTasks ) {
-            if ( node.getScheduledState() == ScheduledState.RUNNING ) {
+        for (final ReportingTaskNode node : reportingTasks) {
+            if (node.getScheduledState() == ScheduledState.RUNNING) {
                 processScheduler.unschedule(node);
             }
         }
     }
-    
+
     @Override
     public void enableControllerService(final ControllerServiceNode serviceNode) {
         serviceNode.verifyCanEnable();
         processScheduler.enableControllerService(serviceNode);
     }
-    
+
     @Override
     public void enableControllerServices(final Collection<ControllerServiceNode> serviceNodes) {
         final Set<ControllerServiceNode> servicesToEnable = new HashSet<>();
         // Ensure that all nodes are already disabled
-        for ( final ControllerServiceNode serviceNode : serviceNodes ) {
+        for (final ControllerServiceNode serviceNode : serviceNodes) {
             final ControllerServiceState curState = serviceNode.getState();
-            if ( ControllerServiceState.DISABLED.equals(curState) ) {
+            if (ControllerServiceState.DISABLED.equals(curState)) {
                 servicesToEnable.add(serviceNode);
             } else {
                 logger.warn("Cannot enable {} because it is not disabled; current state is {}", serviceNode, curState);
             }
         }
-        
+
         // determine the order to load the services. We have to ensure that if service A references service B, then B
         // is enabled first, and so on.
         final Map<String, ControllerServiceNode> idToNodeMap = new HashMap<>();
-        for ( final ControllerServiceNode node : servicesToEnable ) {
+        for (final ControllerServiceNode node : servicesToEnable) {
             idToNodeMap.put(node.getIdentifier(), node);
         }
-        
+
         // We can have many Controller Services dependent on one another. We can have many of these
         // disparate lists of Controller Services that are dependent on one another. We refer to each
         // of these as a branch.
         final List<List<ControllerServiceNode>> branches = determineEnablingOrder(idToNodeMap);
 
-        if ( branches.isEmpty() ) {
+        if (branches.isEmpty()) {
             logger.info("No Controller Services to enable");
             return;
         } else {
             logger.info("Will enable {} Controller Services", servicesToEnable.size());
         }
-        
+
         // Mark all services that are configured to be enabled as 'ENABLING'. This allows Processors, reporting tasks
         // to be valid so that they can be scheduled.
-        for ( final List<ControllerServiceNode> branch : branches ) {
-            for ( final ControllerServiceNode nodeToEnable : branch ) {
+        for (final List<ControllerServiceNode> branch : branches) {
+            for (final ControllerServiceNode nodeToEnable : branch) {
                 nodeToEnable.setState(ControllerServiceState.ENABLING);
             }
         }
-        
+
         final Set<ControllerServiceNode> enabledNodes = Collections.synchronizedSet(new HashSet<ControllerServiceNode>());
         final ExecutorService executor = Executors.newFixedThreadPool(Math.min(10, branches.size()));
-        for ( final List<ControllerServiceNode> branch : branches ) {
+        for (final List<ControllerServiceNode> branch : branches) {
             final Runnable enableBranchRunnable = new Runnable() {
                 @Override
                 public void run() {
                     logger.debug("Enabling Controller Service Branch {}", branch);
-                    
-                    for ( final ControllerServiceNode serviceNode : branch ) {
+
+                    for (final ControllerServiceNode serviceNode : branch) {
                         try {
-                            if ( !enabledNodes.contains(serviceNode) ) {
+                            if (!enabledNodes.contains(serviceNode)) {
                                 enabledNodes.add(serviceNode);
-                                
+
                                 logger.info("Enabling {}", serviceNode);
                                 try {
                                     processScheduler.enableControllerService(serviceNode);
                                 } catch (final Exception e) {
                                     logger.error("Failed to enable " + serviceNode + " due to " + e);
-                                    if ( logger.isDebugEnabled() ) {
+                                    if (logger.isDebugEnabled()) {
                                         logger.error("", e);
                                     }
-                                    
-                                    if ( bulletinRepo != null ) {
+
+                                    if (bulletinRepo != null) {
                                         bulletinRepo.addBulletin(BulletinFactory.createBulletin(
-                                            "Controller Service", Severity.ERROR.name(), "Could not start " + serviceNode + " due to " + e));
+                                                "Controller Service", Severity.ERROR.name(), "Could not start " + serviceNode + " due to " + e));
                                     }
                                 }
                             }
-                            
+
                             // wait for service to finish enabling.
-                            while ( ControllerServiceState.ENABLING.equals(serviceNode.getState()) ) {
+                            while (ControllerServiceState.ENABLING.equals(serviceNode.getState())) {
                                 try {
                                     Thread.sleep(100L);
-                                } catch (final InterruptedException ie) {}
+                                } catch (final InterruptedException ie) {
+                                }
                             }
-                            
+
                             logger.info("State for {} is now {}", serviceNode, serviceNode.getState());
                         } catch (final Exception e) {
                             logger.error("Failed to enable {} due to {}", serviceNode, e.toString());
-                            if ( logger.isDebugEnabled() ) {
+                            if (logger.isDebugEnabled()) {
                                 logger.error("", e);
                             }
                         }
                     }
                 }
             };
-            
+
             executor.submit(enableBranchRunnable);
         }
-        
+
         executor.shutdown();
     }
-    
+
     static List<List<ControllerServiceNode>> determineEnablingOrder(final Map<String, ControllerServiceNode> serviceNodeMap) {
         final List<List<ControllerServiceNode>> orderedNodeLists = new ArrayList<>();
-        
-        for ( final ControllerServiceNode node : serviceNodeMap.values() ) {
-            if ( orderedNodeLists.contains(node) ) {
+
+        for (final ControllerServiceNode node : serviceNodeMap.values()) {
+            if (orderedNodeLists.contains(node)) {
                 continue;   // this node is already in the list.
             }
-            
+
             final List<ControllerServiceNode> branch = new ArrayList<>();
             determineEnablingOrder(serviceNodeMap, node, branch, new HashSet<ControllerServiceNode>());
             orderedNodeLists.add(branch);
         }
-        
+
         return orderedNodeLists;
     }
-    
-    
-    private static void determineEnablingOrder(final Map<String, ControllerServiceNode> serviceNodeMap, final ControllerServiceNode contextNode, final List<ControllerServiceNode> orderedNodes, final Set<ControllerServiceNode> visited) {
-        if ( visited.contains(contextNode) ) {
+
+    private static void determineEnablingOrder(
+            final Map<String, ControllerServiceNode> serviceNodeMap,
+            final ControllerServiceNode contextNode,
+            final List<ControllerServiceNode> orderedNodes,
+            final Set<ControllerServiceNode> visited) {
+        if (visited.contains(contextNode)) {
             return;
         }
-        
-        for ( final Map.Entry<PropertyDescriptor, String> entry : contextNode.getProperties().entrySet() ) {
-            if ( entry.getKey().getControllerServiceDefinition() != null ) {
+
+        for (final Map.Entry<PropertyDescriptor, String> entry : contextNode.getProperties().entrySet()) {
+            if (entry.getKey().getControllerServiceDefinition() != null) {
                 final String referencedServiceId = entry.getValue();
-                if ( referencedServiceId != null ) {
+                if (referencedServiceId != null) {
                     final ControllerServiceNode referencedNode = serviceNodeMap.get(referencedServiceId);
-                    if ( !orderedNodes.contains(referencedNode) ) {
+                    if (!orderedNodes.contains(referencedNode)) {
                         visited.add(contextNode);
                         determineEnablingOrder(serviceNodeMap, referencedNode, orderedNodes, visited);
                     }
@@ -427,12 +425,11 @@ public class StandardControllerServiceProvider implements ControllerServiceProvi
             }
         }
 
-        if ( !orderedNodes.contains(contextNode) ) {
+        if (!orderedNodes.contains(contextNode)) {
             orderedNodes.add(contextNode);
         }
     }
-    
-    
+
     @Override
     public void disableControllerService(final ControllerServiceNode serviceNode) {
         serviceNode.verifyCanDisable();
@@ -461,7 +458,7 @@ public class StandardControllerServiceProvider implements ControllerServiceProvi
         final ControllerServiceNode node = controllerServices.get(serviceIdentifier);
         return (node == null) ? false : (ControllerServiceState.ENABLING == node.getState());
     }
-    
+
     @Override
     public ControllerServiceNode getControllerServiceNode(final String serviceIdentifier) {
         return controllerServices.get(serviceIdentifier);
@@ -478,157 +475,158 @@ public class StandardControllerServiceProvider implements ControllerServiceProvi
 
         return identifiers;
     }
-    
+
     @Override
     public String getControllerServiceName(final String serviceIdentifier) {
-    	final ControllerServiceNode node = getControllerServiceNode(serviceIdentifier);
-    	return node == null ? null : node.getName();
+        final ControllerServiceNode node = getControllerServiceNode(serviceIdentifier);
+        return node == null ? null : node.getName();
     }
-    
+
+    @Override
     public void removeControllerService(final ControllerServiceNode serviceNode) {
         final ControllerServiceNode existing = controllerServices.get(serviceNode.getIdentifier());
-        if ( existing == null || existing != serviceNode ) {
+        if (existing == null || existing != serviceNode) {
             throw new IllegalStateException("Controller Service " + serviceNode + " does not exist in this Flow");
         }
-        
+
         serviceNode.verifyCanDelete();
-        
+
         try (final NarCloseable x = NarCloseable.withNarLoader()) {
             final ConfigurationContext configurationContext = new StandardConfigurationContext(serviceNode, this);
             ReflectionUtils.quietlyInvokeMethodsWithAnnotation(OnRemoved.class, serviceNode.getControllerServiceImplementation(), configurationContext);
         }
-        
-        for ( final Map.Entry<PropertyDescriptor, String> entry : serviceNode.getProperties().entrySet() ) {
+
+        for (final Map.Entry<PropertyDescriptor, String> entry : serviceNode.getProperties().entrySet()) {
             final PropertyDescriptor descriptor = entry.getKey();
-            if (descriptor.getControllerServiceDefinition() != null ) {
+            if (descriptor.getControllerServiceDefinition() != null) {
                 final String value = entry.getValue() == null ? descriptor.getDefaultValue() : entry.getValue();
-                if ( value != null ) {
+                if (value != null) {
                     final ControllerServiceNode referencedNode = getControllerServiceNode(value);
-                    if ( referencedNode != null ) {
+                    if (referencedNode != null) {
                         referencedNode.removeReference(serviceNode);
                     }
                 }
             }
         }
-        
+
         controllerServices.remove(serviceNode.getIdentifier());
     }
-    
+
     @Override
     public Set<ControllerServiceNode> getAllControllerServices() {
-    	return new HashSet<>(controllerServices.values());
+        return new HashSet<>(controllerServices.values());
     }
-    
-    
+
     /**
-     * Returns a List of all components that reference the given referencedNode (either directly or indirectly through
-     * another service) that are also of the given componentType. The list that is returned is in the order in which they will
-     * need to be 'activated' (enabled/started).
-     * @param referencedNode
-     * @param componentType
-     * @return
+     * Returns a List of all components that reference the given referencedNode
+     * (either directly or indirectly through another service) that are also of
+     * the given componentType. The list that is returned is in the order in
+     * which they will need to be 'activated' (enabled/started).
+     *
+     * @param referencedNode node
+     * @param componentType type
+     * @return list of components
      */
     private <T> List<T> findRecursiveReferences(final ControllerServiceNode referencedNode, final Class<T> componentType) {
         final List<T> references = new ArrayList<>();
-        
-        for ( final ConfiguredComponent referencingComponent : referencedNode.getReferences().getReferencingComponents() ) {
-            if ( componentType.isAssignableFrom(referencingComponent.getClass()) ) {
+
+        for (final ConfiguredComponent referencingComponent : referencedNode.getReferences().getReferencingComponents()) {
+            if (componentType.isAssignableFrom(referencingComponent.getClass())) {
                 references.add(componentType.cast(referencingComponent));
             }
-            
-            if ( referencingComponent instanceof ControllerServiceNode ) {
+
+            if (referencingComponent instanceof ControllerServiceNode) {
                 final ControllerServiceNode referencingNode = (ControllerServiceNode) referencingComponent;
-                
+
                 // find components recursively that depend on referencingNode.
                 final List<T> recursive = findRecursiveReferences(referencingNode, componentType);
-                
+
                 // For anything that depends on referencing node, we want to add it to the list, but we know
                 // that it must come after the referencing node, so we first remove any existing occurrence.
                 references.removeAll(recursive);
                 references.addAll(recursive);
             }
         }
-        
+
         return references;
     }
 
-    
     @Override
     public void enableReferencingServices(final ControllerServiceNode serviceNode) {
         final List<ControllerServiceNode> recursiveReferences = findRecursiveReferences(serviceNode, ControllerServiceNode.class);
         enableReferencingServices(serviceNode, recursiveReferences);
     }
-    
+
     private void enableReferencingServices(final ControllerServiceNode serviceNode, final List<ControllerServiceNode> recursiveReferences) {
-        if ( serviceNode.getState() != ControllerServiceState.ENABLED && serviceNode.getState() != ControllerServiceState.ENABLING ) {
+        if (serviceNode.getState() != ControllerServiceState.ENABLED && serviceNode.getState() != ControllerServiceState.ENABLING) {
             serviceNode.verifyCanEnable(new HashSet<>(recursiveReferences));
         }
-        
+
         final Set<ControllerServiceNode> ifEnabled = new HashSet<>();
         final List<ControllerServiceNode> toEnable = findRecursiveReferences(serviceNode, ControllerServiceNode.class);
-        for ( final ControllerServiceNode nodeToEnable : toEnable ) {
+        for (final ControllerServiceNode nodeToEnable : toEnable) {
             final ControllerServiceState state = nodeToEnable.getState();
-            if ( state != ControllerServiceState.ENABLED && state != ControllerServiceState.ENABLING ) {
+            if (state != ControllerServiceState.ENABLED && state != ControllerServiceState.ENABLING) {
                 nodeToEnable.verifyCanEnable(ifEnabled);
                 ifEnabled.add(nodeToEnable);
             }
         }
-        
-        for ( final ControllerServiceNode nodeToEnable : toEnable ) {
+
+        for (final ControllerServiceNode nodeToEnable : toEnable) {
             final ControllerServiceState state = nodeToEnable.getState();
-            if ( state != ControllerServiceState.ENABLED && state != ControllerServiceState.ENABLING ) {
+            if (state != ControllerServiceState.ENABLED && state != ControllerServiceState.ENABLING) {
                 enableControllerService(nodeToEnable);
             }
         }
     }
-    
+
     @Override
     public void verifyCanEnableReferencingServices(final ControllerServiceNode serviceNode) {
         final List<ControllerServiceNode> referencingServices = findRecursiveReferences(serviceNode, ControllerServiceNode.class);
         final Set<ControllerServiceNode> referencingServiceSet = new HashSet<>(referencingServices);
-        
-        for ( final ControllerServiceNode referencingService : referencingServices ) {
+
+        for (final ControllerServiceNode referencingService : referencingServices) {
             referencingService.verifyCanEnable(referencingServiceSet);
         }
     }
-    
+
     @Override
     public void verifyCanScheduleReferencingComponents(final ControllerServiceNode serviceNode) {
         final List<ControllerServiceNode> referencingServices = findRecursiveReferences(serviceNode, ControllerServiceNode.class);
         final List<ReportingTaskNode> referencingReportingTasks = findRecursiveReferences(serviceNode, ReportingTaskNode.class);
         final List<ProcessorNode> referencingProcessors = findRecursiveReferences(serviceNode, ProcessorNode.class);
-        
+
         final Set<ControllerServiceNode> referencingServiceSet = new HashSet<>(referencingServices);
-        
-        for ( final ReportingTaskNode taskNode : referencingReportingTasks ) {
-            if ( taskNode.getScheduledState() != ScheduledState.DISABLED ) {
+
+        for (final ReportingTaskNode taskNode : referencingReportingTasks) {
+            if (taskNode.getScheduledState() != ScheduledState.DISABLED) {
                 taskNode.verifyCanStart(referencingServiceSet);
             }
         }
-        
-        for ( final ProcessorNode procNode : referencingProcessors ) {
-            if ( procNode.getScheduledState() != ScheduledState.DISABLED ) {
+
+        for (final ProcessorNode procNode : referencingProcessors) {
+            if (procNode.getScheduledState() != ScheduledState.DISABLED) {
                 procNode.verifyCanStart(referencingServiceSet);
             }
         }
     }
-    
+
     @Override
     public void verifyCanDisableReferencingServices(final ControllerServiceNode serviceNode) {
         // Get a list of all Controller Services that need to be disabled, in the order that they need to be
         // disabled.
         final List<ControllerServiceNode> toDisable = findRecursiveReferences(serviceNode, ControllerServiceNode.class);
         final Set<ControllerServiceNode> serviceSet = new HashSet<>(toDisable);
-        
-        for ( final ControllerServiceNode nodeToDisable : toDisable ) {
+
+        for (final ControllerServiceNode nodeToDisable : toDisable) {
             final ControllerServiceState state = nodeToDisable.getState();
-            
-            if ( state != ControllerServiceState.DISABLED && state != ControllerServiceState.DISABLING ) {
+
+            if (state != ControllerServiceState.DISABLED && state != ControllerServiceState.DISABLING) {
                 nodeToDisable.verifyCanDisable(serviceSet);
             }
         }
     }
-    
+
     @Override
     public void verifyCanStopReferencingComponents(final ControllerServiceNode serviceNode) {
         // we can always stop referencing components

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceReference.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceReference.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceReference.java
index c470b99..701adcf 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceReference.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/service/StandardControllerServiceReference.java
@@ -65,9 +65,9 @@ public class StandardControllerServiceReference implements ControllerServiceRefe
         for (final ConfiguredComponent component : components) {
             if (component instanceof ControllerServiceNode) {
                 serviceNodes.add((ControllerServiceNode) component);
-                
+
                 final ControllerServiceState state = ((ControllerServiceNode) component).getState();
-                if ( state != ControllerServiceState.DISABLED ) {
+                if (state != ControllerServiceState.DISABLED) {
                     activeReferences.add(component);
                 }
             } else if (isRunning(component)) {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/status/history/StandardMetricDescriptor.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/status/history/StandardMetricDescriptor.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/status/history/StandardMetricDescriptor.java
index 89ac846..6970fce 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/status/history/StandardMetricDescriptor.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/status/history/StandardMetricDescriptor.java
@@ -31,7 +31,8 @@ public class StandardMetricDescriptor<T> implements MetricDescriptor<T> {
         this(field, label, description, formatter, valueFunction, null);
     }
 
-    public StandardMetricDescriptor(final String field, final String label, final String description, final MetricDescriptor.Formatter formatter, final ValueMapper<T> valueFunction, final ValueReducer<StatusSnapshot, Long> reducer) {
+    public StandardMetricDescriptor(final String field, final String label, final String description,
+            final MetricDescriptor.Formatter formatter, final ValueMapper<T> valueFunction, final ValueReducer<StatusSnapshot, Long> reducer) {
         this.field = field;
         this.label = label;
         this.description = description;
@@ -40,41 +41,21 @@ public class StandardMetricDescriptor<T> implements MetricDescriptor<T> {
         this.reducer = reducer == null ? new SumReducer() : reducer;
     }
 
-    /**
-     * The name of this status field.
-     *
-     * @return
-     */
     @Override
     public String getField() {
         return field;
     }
 
-    /**
-     * The label of this status field.
-     *
-     * @return
-     */
     @Override
     public String getLabel() {
         return label;
     }
 
-    /**
-     * The description of this status field.
-     *
-     * @return
-     */
     @Override
     public String getDescription() {
         return description;
     }
 
-    /**
-     * The formatter for this descriptor.
-     *
-     * @return
-     */
     @Override
     public MetricDescriptor.Formatter getFormatter() {
         return formatter;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/status/history/VolatileComponentStatusRepository.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/status/history/VolatileComponentStatusRepository.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/status/history/VolatileComponentStatusRepository.java
index 0872192..d2a983a 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/status/history/VolatileComponentStatusRepository.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/status/history/VolatileComponentStatusRepository.java
@@ -91,7 +91,8 @@ public class VolatileComponentStatusRepository implements ComponentStatusReposit
 
     @Override
     public synchronized void capture(final ProcessGroupStatus rootGroupStatus, final Date timestamp) {
-        captures.add(new Capture(timestamp, ComponentStatusReport.fromProcessGroupStatus(rootGroupStatus, ComponentType.PROCESSOR, ComponentType.CONNECTION, ComponentType.PROCESS_GROUP, ComponentType.REMOTE_PROCESS_GROUP)));
+        captures.add(new Capture(timestamp, ComponentStatusReport.fromProcessGroupStatus(rootGroupStatus, ComponentType.PROCESSOR,
+                ComponentType.CONNECTION, ComponentType.PROCESS_GROUP, ComponentType.REMOTE_PROCESS_GROUP)));
         logger.debug("Captured metrics for {}", this);
         lastCaptureTime = Math.max(lastCaptureTime, timestamp.getTime());
     }
@@ -269,48 +270,57 @@ public class VolatileComponentStatusRepository implements ComponentStatusReposit
 
     public static enum RemoteProcessGroupStatusDescriptor {
 
-        SENT_BYTES(new StandardMetricDescriptor<RemoteProcessGroupStatus>("sentBytes", "Bytes Sent (5 mins)", "The cumulative size of all FlowFiles that have been successfully sent to the remote system in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<RemoteProcessGroupStatus>() {
-            @Override
-            public Long getValue(final RemoteProcessGroupStatus status) {
-                return status.getSentContentSize();
-            }
-        })),
-        SENT_COUNT(new StandardMetricDescriptor<RemoteProcessGroupStatus>("sentCount", "FlowFiles Sent (5 mins)", "The number of FlowFiles that have been successfully sent to the remote system in the past 5 minutes", Formatter.COUNT, new ValueMapper<RemoteProcessGroupStatus>() {
-            @Override
-            public Long getValue(final RemoteProcessGroupStatus status) {
-                return Long.valueOf(status.getSentCount().longValue());
-            }
-        })),
-        RECEIVED_BYTES(new StandardMetricDescriptor<RemoteProcessGroupStatus>("receivedBytes", "Bytes Received (5 mins)", "The cumulative size of all FlowFiles that have been received from the remote system in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<RemoteProcessGroupStatus>() {
-            @Override
-            public Long getValue(final RemoteProcessGroupStatus status) {
-                return status.getReceivedContentSize();
-            }
-        })),
-        RECEIVED_COUNT(new StandardMetricDescriptor<RemoteProcessGroupStatus>("receivedCount", "FlowFiles Received (5 mins)", "The number of FlowFiles that have been received from the remote system in the past 5 minutes", Formatter.COUNT, new ValueMapper<RemoteProcessGroupStatus>() {
-            @Override
-            public Long getValue(final RemoteProcessGroupStatus status) {
-                return Long.valueOf(status.getReceivedCount().longValue());
-            }
-        })),
-        RECEIVED_BYTES_PER_SECOND(new StandardMetricDescriptor<RemoteProcessGroupStatus>("receivedBytesPerSecond", "Received Bytes Per Second", "The data rate at which data was received from the remote system in the past 5 minutes in terms of Bytes Per Second", Formatter.DATA_SIZE, new ValueMapper<RemoteProcessGroupStatus>() {
-            @Override
-            public Long getValue(final RemoteProcessGroupStatus status) {
-                return Long.valueOf(status.getReceivedContentSize().longValue() / 300L);
-            }
-        })),
-        SENT_BYTES_PER_SECOND(new StandardMetricDescriptor<RemoteProcessGroupStatus>("sentBytesPerSecond", "Sent Bytes Per Second", "The data rate at which data was received from the remote system in the past 5 minutes in terms of Bytes Per Second", Formatter.DATA_SIZE, new ValueMapper<RemoteProcessGroupStatus>() {
-            @Override
-            public Long getValue(final RemoteProcessGroupStatus status) {
-                return Long.valueOf(status.getSentContentSize().longValue() / 300L);
-            }
-        })),
-        TOTAL_BYTES_PER_SECOND(new StandardMetricDescriptor<RemoteProcessGroupStatus>("totalBytesPerSecond", "Total Bytes Per Second", "The sum of the send and receive data rate from the remote system in the past 5 minutes in terms of Bytes Per Second", Formatter.DATA_SIZE, new ValueMapper<RemoteProcessGroupStatus>() {
-            @Override
-            public Long getValue(final RemoteProcessGroupStatus status) {
-                return Long.valueOf((status.getReceivedContentSize().longValue() + status.getSentContentSize().longValue()) / 300L);
-            }
-        })),
+        SENT_BYTES(new StandardMetricDescriptor<RemoteProcessGroupStatus>("sentBytes", "Bytes Sent (5 mins)",
+                "The cumulative size of all FlowFiles that have been successfully sent to the remote system in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<RemoteProcessGroupStatus>() {
+                    @Override
+                    public Long getValue(final RemoteProcessGroupStatus status) {
+                        return status.getSentContentSize();
+                    }
+                })),
+        SENT_COUNT(new StandardMetricDescriptor<RemoteProcessGroupStatus>("sentCount", "FlowFiles Sent (5 mins)",
+                "The number of FlowFiles that have been successfully sent to the remote system in the past 5 minutes", Formatter.COUNT, new ValueMapper<RemoteProcessGroupStatus>() {
+                    @Override
+                    public Long getValue(final RemoteProcessGroupStatus status) {
+                        return Long.valueOf(status.getSentCount().longValue());
+                    }
+                })),
+        RECEIVED_BYTES(new StandardMetricDescriptor<RemoteProcessGroupStatus>("receivedBytes", "Bytes Received (5 mins)",
+                "The cumulative size of all FlowFiles that have been received from the remote system in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<RemoteProcessGroupStatus>() {
+                    @Override
+                    public Long getValue(final RemoteProcessGroupStatus status) {
+                        return status.getReceivedContentSize();
+                    }
+                })),
+        RECEIVED_COUNT(new StandardMetricDescriptor<RemoteProcessGroupStatus>("receivedCount", "FlowFiles Received (5 mins)",
+                "The number of FlowFiles that have been received from the remote system in the past 5 minutes", Formatter.COUNT, new ValueMapper<RemoteProcessGroupStatus>() {
+                    @Override
+                    public Long getValue(final RemoteProcessGroupStatus status) {
+                        return Long.valueOf(status.getReceivedCount().longValue());
+                    }
+                })),
+        RECEIVED_BYTES_PER_SECOND(new StandardMetricDescriptor<RemoteProcessGroupStatus>("receivedBytesPerSecond", "Received Bytes Per Second",
+                "The data rate at which data was received from the remote system in the past 5 minutes in terms of Bytes Per Second",
+                Formatter.DATA_SIZE, new ValueMapper<RemoteProcessGroupStatus>() {
+                    @Override
+                    public Long getValue(final RemoteProcessGroupStatus status) {
+                        return Long.valueOf(status.getReceivedContentSize().longValue() / 300L);
+                    }
+                })),
+        SENT_BYTES_PER_SECOND(new StandardMetricDescriptor<RemoteProcessGroupStatus>("sentBytesPerSecond", "Sent Bytes Per Second",
+                "The data rate at which data was received from the remote system in the past 5 minutes in terms of Bytes Per Second", Formatter.DATA_SIZE, new ValueMapper<RemoteProcessGroupStatus>() {
+                    @Override
+                    public Long getValue(final RemoteProcessGroupStatus status) {
+                        return Long.valueOf(status.getSentContentSize().longValue() / 300L);
+                    }
+                })),
+        TOTAL_BYTES_PER_SECOND(new StandardMetricDescriptor<RemoteProcessGroupStatus>("totalBytesPerSecond", "Total Bytes Per Second",
+                "The sum of the send and receive data rate from the remote system in the past 5 minutes in terms of Bytes Per Second",
+                Formatter.DATA_SIZE, new ValueMapper<RemoteProcessGroupStatus>() {
+                    @Override
+                    public Long getValue(final RemoteProcessGroupStatus status) {
+                        return Long.valueOf((status.getReceivedContentSize().longValue() + status.getSentContentSize().longValue()) / 300L);
+                    }
+                })),
         AVERAGE_LINEAGE_DURATION(new StandardMetricDescriptor<RemoteProcessGroupStatus>(
                 "averageLineageDuration",
                 "Average Lineage Duration (5 mins)",
@@ -358,66 +368,83 @@ public class VolatileComponentStatusRepository implements ComponentStatusReposit
 
     public static enum ProcessGroupStatusDescriptor {
 
-        BYTES_READ(new StandardMetricDescriptor<ProcessGroupStatus>("bytesRead", "Bytes Read (5 mins)", "The total number of bytes read from Content Repository by Processors in this Process Group in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ProcessGroupStatus>() {
-            @Override
-            public Long getValue(final ProcessGroupStatus status) {
-                return status.getBytesRead();
-            }
-        })),
-        BYTES_WRITTEN(new StandardMetricDescriptor<ProcessGroupStatus>("bytesWritten", "Bytes Written (5 mins)", "The total number of bytes written to Content Repository by Processors in this Process Group in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ProcessGroupStatus>() {
-            @Override
-            public Long getValue(final ProcessGroupStatus status) {
-                return status.getBytesWritten();
-            }
-        })),
-        BYTES_TRANSFERRED(new StandardMetricDescriptor<ProcessGroupStatus>("bytesTransferred", "Bytes Transferred (5 mins)", "The total number of bytes read from or written to Content Repository by Processors in this Process Group in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ProcessGroupStatus>() {
-            @Override
-            public Long getValue(final ProcessGroupStatus status) {
-                return status.getBytesRead() + status.getBytesWritten();
-            }
-        })),
-        INPUT_BYTES(new StandardMetricDescriptor<ProcessGroupStatus>("inputBytes", "Bytes In (5 mins)", "The cumulative size of all FlowFiles that have entered this Process Group via its Input Ports in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ProcessGroupStatus>() {
-            @Override
-            public Long getValue(final ProcessGroupStatus status) {
-                return status.getInputContentSize();
-            }
-        })),
-        INPUT_COUNT(new StandardMetricDescriptor<ProcessGroupStatus>("inputCount", "FlowFiles In (5 mins)", "The number of FlowFiles that have entered this Process Group via its Input Ports in the past 5 minutes", Formatter.COUNT, new ValueMapper<ProcessGroupStatus>() {
-            @Override
-            public Long getValue(final ProcessGroupStatus status) {
-                return status.getInputCount().longValue();
-            }
-        })),
-        OUTPUT_BYTES(new StandardMetricDescriptor<ProcessGroupStatus>("outputBytes", "Bytes Out (5 mins)", "The cumulative size of all FlowFiles that have exited this Process Group via its Output Ports in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ProcessGroupStatus>() {
-            @Override
-            public Long getValue(final ProcessGroupStatus status) {
-                return status.getOutputContentSize();
-            }
-        })),
-        OUTPUT_COUNT(new StandardMetricDescriptor<ProcessGroupStatus>("outputCount", "FlowFiles Out (5 mins)", "The number of FlowFiles that have exited this Process Group via its Output Ports in the past 5 minutes", Formatter.COUNT, new ValueMapper<ProcessGroupStatus>() {
-            @Override
-            public Long getValue(final ProcessGroupStatus status) {
-                return status.getOutputCount().longValue();
-            }
-        })),
-        QUEUED_BYTES(new StandardMetricDescriptor<ProcessGroupStatus>("queuedBytes", "Queued Bytes", "The cumulative size of all FlowFiles queued in all Connections of this Process Group", Formatter.DATA_SIZE, new ValueMapper<ProcessGroupStatus>() {
-            @Override
-            public Long getValue(final ProcessGroupStatus status) {
-                return status.getQueuedContentSize();
-            }
-        })),
-        QUEUED_COUNT(new StandardMetricDescriptor<ProcessGroupStatus>("queuedCount", "Queued Count", "The number of FlowFiles queued in all Connections of this Process Group", Formatter.COUNT, new ValueMapper<ProcessGroupStatus>() {
-            @Override
-            public Long getValue(final ProcessGroupStatus status) {
-                return status.getQueuedCount().longValue();
-            }
-        })),
-        TASK_MILLIS(new StandardMetricDescriptor<ProcessGroupStatus>("taskMillis", "Total Task Duration (5 mins)", "The total number of thread-milliseconds that the Processors within this ProcessGroup have used to complete their tasks in the past 5 minutes", Formatter.DURATION, new ValueMapper<ProcessGroupStatus>() {
-            @Override
-            public Long getValue(final ProcessGroupStatus status) {
-                return calculateTaskMillis(status);
-            }
-        }));
+        BYTES_READ(new StandardMetricDescriptor<ProcessGroupStatus>("bytesRead", "Bytes Read (5 mins)",
+                "The total number of bytes read from Content Repository by Processors in this Process Group in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ProcessGroupStatus>() {
+                    @Override
+                    public Long getValue(final ProcessGroupStatus status) {
+                        return status.getBytesRead();
+                    }
+                })),
+        BYTES_WRITTEN(new StandardMetricDescriptor<ProcessGroupStatus>("bytesWritten", "Bytes Written (5 mins)",
+                "The total number of bytes written to Content Repository by Processors in this Process Group in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ProcessGroupStatus>() {
+                    @Override
+                    public Long getValue(final ProcessGroupStatus status) {
+                        return status.getBytesWritten();
+                    }
+                })),
+        BYTES_TRANSFERRED(new StandardMetricDescriptor<ProcessGroupStatus>("bytesTransferred", "Bytes Transferred (5 mins)",
+                "The total number of bytes read from or written to Content Repository by Processors in this Process Group in the past 5 minutes",
+                Formatter.DATA_SIZE, new ValueMapper<ProcessGroupStatus>() {
+                    @Override
+                    public Long getValue(final ProcessGroupStatus status) {
+                        return status.getBytesRead() + status.getBytesWritten();
+                    }
+                })),
+        INPUT_BYTES(new StandardMetricDescriptor<ProcessGroupStatus>("inputBytes", "Bytes In (5 mins)",
+                "The cumulative size of all FlowFiles that have entered this Process Group via its Input Ports in the past 5 minutes",
+                Formatter.DATA_SIZE, new ValueMapper<ProcessGroupStatus>() {
+                    @Override
+                    public Long getValue(final ProcessGroupStatus status) {
+                        return status.getInputContentSize();
+                    }
+                })),
+        INPUT_COUNT(new StandardMetricDescriptor<ProcessGroupStatus>("inputCount", "FlowFiles In (5 mins)",
+                "The number of FlowFiles that have entered this Process Group via its Input Ports in the past 5 minutes",
+                Formatter.COUNT, new ValueMapper<ProcessGroupStatus>() {
+                    @Override
+                    public Long getValue(final ProcessGroupStatus status) {
+                        return status.getInputCount().longValue();
+                    }
+                })),
+        OUTPUT_BYTES(new StandardMetricDescriptor<ProcessGroupStatus>("outputBytes", "Bytes Out (5 mins)",
+                "The cumulative size of all FlowFiles that have exited this Process Group via its Output Ports in the past 5 minutes",
+                Formatter.DATA_SIZE, new ValueMapper<ProcessGroupStatus>() {
+                    @Override
+                    public Long getValue(final ProcessGroupStatus status) {
+                        return status.getOutputContentSize();
+                    }
+                })),
+        OUTPUT_COUNT(new StandardMetricDescriptor<ProcessGroupStatus>("outputCount", "FlowFiles Out (5 mins)",
+                "The number of FlowFiles that have exited this Process Group via its Output Ports in the past 5 minutes",
+                Formatter.COUNT, new ValueMapper<ProcessGroupStatus>() {
+                    @Override
+                    public Long getValue(final ProcessGroupStatus status) {
+                        return status.getOutputCount().longValue();
+                    }
+                })),
+        QUEUED_BYTES(new StandardMetricDescriptor<ProcessGroupStatus>("queuedBytes", "Queued Bytes",
+                "The cumulative size of all FlowFiles queued in all Connections of this Process Group",
+                Formatter.DATA_SIZE, new ValueMapper<ProcessGroupStatus>() {
+                    @Override
+                    public Long getValue(final ProcessGroupStatus status) {
+                        return status.getQueuedContentSize();
+                    }
+                })),
+        QUEUED_COUNT(new StandardMetricDescriptor<ProcessGroupStatus>("queuedCount", "Queued Count",
+                "The number of FlowFiles queued in all Connections of this Process Group", Formatter.COUNT, new ValueMapper<ProcessGroupStatus>() {
+                    @Override
+                    public Long getValue(final ProcessGroupStatus status) {
+                        return status.getQueuedCount().longValue();
+                    }
+                })),
+        TASK_MILLIS(new StandardMetricDescriptor<ProcessGroupStatus>("taskMillis", "Total Task Duration (5 mins)",
+                "The total number of thread-milliseconds that the Processors within this ProcessGroup have used to complete their tasks in the past 5 minutes",
+                Formatter.DURATION, new ValueMapper<ProcessGroupStatus>() {
+                    @Override
+                    public Long getValue(final ProcessGroupStatus status) {
+                        return calculateTaskMillis(status);
+                    }
+                }));
 
         private MetricDescriptor<ProcessGroupStatus> descriptor;
 
@@ -436,42 +463,48 @@ public class VolatileComponentStatusRepository implements ComponentStatusReposit
 
     public static enum ConnectionStatusDescriptor {
 
-        INPUT_BYTES(new StandardMetricDescriptor<ConnectionStatus>("inputBytes", "Bytes In (5 mins)", "The cumulative size of all FlowFiles that were transferred to this Connection in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ConnectionStatus>() {
-            @Override
-            public Long getValue(final ConnectionStatus status) {
-                return status.getInputBytes();
-            }
-        })),
-        INPUT_COUNT(new StandardMetricDescriptor<ConnectionStatus>("inputCount", "FlowFiles In (5 mins)", "The number of FlowFiles that were transferred to this Connection in the past 5 minutes", Formatter.COUNT, new ValueMapper<ConnectionStatus>() {
-            @Override
-            public Long getValue(final ConnectionStatus status) {
-                return Long.valueOf(status.getInputCount());
-            }
-        })),
-        OUTPUT_BYTES(new StandardMetricDescriptor<ConnectionStatus>("outputBytes", "Bytes Out (5 mins)", "The cumulative size of all FlowFiles that were pulled from this Connection in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ConnectionStatus>() {
-            @Override
-            public Long getValue(final ConnectionStatus status) {
-                return status.getOutputBytes();
-            }
-        })),
-        OUTPUT_COUNT(new StandardMetricDescriptor<ConnectionStatus>("outputCount", "FlowFiles Out (5 mins)", "The number of FlowFiles that were pulled from this Connection in the past 5 minutes", Formatter.COUNT, new ValueMapper<ConnectionStatus>() {
-            @Override
-            public Long getValue(final ConnectionStatus status) {
-                return Long.valueOf(status.getOutputCount());
-            }
-        })),
-        QUEUED_BYTES(new StandardMetricDescriptor<ConnectionStatus>("queuedBytes", "Queued Bytes", "The number of Bytes queued in this Connection", Formatter.DATA_SIZE, new ValueMapper<ConnectionStatus>() {
-            @Override
-            public Long getValue(final ConnectionStatus status) {
-                return status.getQueuedBytes();
-            }
-        })),
-        QUEUED_COUNT(new StandardMetricDescriptor<ConnectionStatus>("queuedCount", "Queued Count", "The number of FlowFiles queued in this Connection", Formatter.COUNT, new ValueMapper<ConnectionStatus>() {
-            @Override
-            public Long getValue(final ConnectionStatus status) {
-                return Long.valueOf(status.getQueuedCount());
-            }
-        }));
+        INPUT_BYTES(new StandardMetricDescriptor<ConnectionStatus>("inputBytes", "Bytes In (5 mins)",
+                "The cumulative size of all FlowFiles that were transferred to this Connection in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ConnectionStatus>() {
+                    @Override
+                    public Long getValue(final ConnectionStatus status) {
+                        return status.getInputBytes();
+                    }
+                })),
+        INPUT_COUNT(new StandardMetricDescriptor<ConnectionStatus>("inputCount", "FlowFiles In (5 mins)",
+                "The number of FlowFiles that were transferred to this Connection in the past 5 minutes", Formatter.COUNT, new ValueMapper<ConnectionStatus>() {
+                    @Override
+                    public Long getValue(final ConnectionStatus status) {
+                        return Long.valueOf(status.getInputCount());
+                    }
+                })),
+        OUTPUT_BYTES(new StandardMetricDescriptor<ConnectionStatus>("outputBytes", "Bytes Out (5 mins)",
+                "The cumulative size of all FlowFiles that were pulled from this Connection in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ConnectionStatus>() {
+                    @Override
+                    public Long getValue(final ConnectionStatus status) {
+                        return status.getOutputBytes();
+                    }
+                })),
+        OUTPUT_COUNT(new StandardMetricDescriptor<ConnectionStatus>("outputCount", "FlowFiles Out (5 mins)",
+                "The number of FlowFiles that were pulled from this Connection in the past 5 minutes", Formatter.COUNT, new ValueMapper<ConnectionStatus>() {
+                    @Override
+                    public Long getValue(final ConnectionStatus status) {
+                        return Long.valueOf(status.getOutputCount());
+                    }
+                })),
+        QUEUED_BYTES(new StandardMetricDescriptor<ConnectionStatus>("queuedBytes", "Queued Bytes",
+                "The number of Bytes queued in this Connection", Formatter.DATA_SIZE, new ValueMapper<ConnectionStatus>() {
+                    @Override
+                    public Long getValue(final ConnectionStatus status) {
+                        return status.getQueuedBytes();
+                    }
+                })),
+        QUEUED_COUNT(new StandardMetricDescriptor<ConnectionStatus>("queuedCount", "Queued Count",
+                "The number of FlowFiles queued in this Connection", Formatter.COUNT, new ValueMapper<ConnectionStatus>() {
+                    @Override
+                    public Long getValue(final ConnectionStatus status) {
+                        return Long.valueOf(status.getQueuedCount());
+                    }
+                }));
 
         private MetricDescriptor<ConnectionStatus> descriptor;
 
@@ -490,66 +523,76 @@ public class VolatileComponentStatusRepository implements ComponentStatusReposit
 
     public static enum ProcessorStatusDescriptor {
 
-        BYTES_READ(new StandardMetricDescriptor<ProcessorStatus>("bytesRead", "Bytes Read (5 mins)", "The total number of bytes read from the Content Repository by this Processor in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ProcessorStatus>() {
-            @Override
-            public Long getValue(final ProcessorStatus status) {
-                return status.getBytesRead();
-            }
-        })),
-        BYTES_WRITTEN(new StandardMetricDescriptor<ProcessorStatus>("bytesWritten", "Bytes Written (5 mins)", "The total number of bytes written to the Content Repository by this Processor in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ProcessorStatus>() {
-            @Override
-            public Long getValue(final ProcessorStatus status) {
-                return status.getBytesWritten();
-            }
-        })),
-        BYTES_TRANSFERRED(new StandardMetricDescriptor<ProcessorStatus>("bytesTransferred", "Bytes Transferred (5 mins)", "The total number of bytes read from or written to the Content Repository by this Processor in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ProcessorStatus>() {
-            @Override
-            public Long getValue(final ProcessorStatus status) {
-                return status.getBytesRead() + status.getBytesWritten();
-            }
-        })),
-        INPUT_BYTES(new StandardMetricDescriptor<ProcessorStatus>("inputBytes", "Bytes In (5 mins)", "The cumulative size of all FlowFiles that this Processor has pulled from its queues in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ProcessorStatus>() {
-            @Override
-            public Long getValue(final ProcessorStatus status) {
-                return status.getInputBytes();
-            }
-        })),
-        INPUT_COUNT(new StandardMetricDescriptor<ProcessorStatus>("inputCount", "FlowFiles In (5 mins)", "The number of FlowFiles that this Processor has pulled from its queues in the past 5 minutes", Formatter.COUNT, new ValueMapper<ProcessorStatus>() {
-            @Override
-            public Long getValue(final ProcessorStatus status) {
-                return Long.valueOf(status.getInputCount());
-            }
-        })),
-        OUTPUT_BYTES(new StandardMetricDescriptor<ProcessorStatus>("outputBytes", "Bytes Out (5 mins)", "The cumulative size of all FlowFiles that this Processor has transferred to downstream queues in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ProcessorStatus>() {
-            @Override
-            public Long getValue(final ProcessorStatus status) {
-                return status.getOutputBytes();
-            }
-        })),
-        OUTPUT_COUNT(new StandardMetricDescriptor<ProcessorStatus>("outputCount", "FlowFiles Out (5 mins)", "The number of FlowFiles that this Processor has transferred to downstream queues in the past 5 minutes", Formatter.COUNT, new ValueMapper<ProcessorStatus>() {
-            @Override
-            public Long getValue(final ProcessorStatus status) {
-                return Long.valueOf(status.getOutputCount());
-            }
-        })),
-        TASK_COUNT(new StandardMetricDescriptor<ProcessorStatus>("taskCount", "Tasks (5 mins)", "The number of tasks that this Processor has completed in the past 5 minutes", Formatter.COUNT, new ValueMapper<ProcessorStatus>() {
-            @Override
-            public Long getValue(final ProcessorStatus status) {
-                return Long.valueOf(status.getInvocations());
-            }
-        })),
-        TASK_MILLIS(new StandardMetricDescriptor<ProcessorStatus>("taskMillis", "Total Task Duration (5 mins)", "The total number of thread-milliseconds that the Processor has used to complete its tasks in the past 5 minutes", Formatter.DURATION, new ValueMapper<ProcessorStatus>() {
-            @Override
-            public Long getValue(final ProcessorStatus status) {
-                return TimeUnit.MILLISECONDS.convert(status.getProcessingNanos(), TimeUnit.NANOSECONDS);
-            }
-        })),
-        FLOWFILES_REMOVED(new StandardMetricDescriptor<ProcessorStatus>("flowFilesRemoved", "FlowFiles Removed (5 mins)", "The total number of FlowFiles removed by this Processor in the last 5 minutes", Formatter.COUNT, new ValueMapper<ProcessorStatus>() {
-            @Override
-            public Long getValue(final ProcessorStatus status) {
-                return Long.valueOf(status.getFlowFilesRemoved());
-            }
-        })),
+        BYTES_READ(new StandardMetricDescriptor<ProcessorStatus>("bytesRead", "Bytes Read (5 mins)",
+                "The total number of bytes read from the Content Repository by this Processor in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ProcessorStatus>() {
+                    @Override
+                    public Long getValue(final ProcessorStatus status) {
+                        return status.getBytesRead();
+                    }
+                })),
+        BYTES_WRITTEN(new StandardMetricDescriptor<ProcessorStatus>("bytesWritten", "Bytes Written (5 mins)",
+                "The total number of bytes written to the Content Repository by this Processor in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ProcessorStatus>() {
+                    @Override
+                    public Long getValue(final ProcessorStatus status) {
+                        return status.getBytesWritten();
+                    }
+                })),
+        BYTES_TRANSFERRED(new StandardMetricDescriptor<ProcessorStatus>("bytesTransferred", "Bytes Transferred (5 mins)",
+                "The total number of bytes read from or written to the Content Repository by this Processor in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ProcessorStatus>() {
+                    @Override
+                    public Long getValue(final ProcessorStatus status) {
+                        return status.getBytesRead() + status.getBytesWritten();
+                    }
+                })),
+        INPUT_BYTES(new StandardMetricDescriptor<ProcessorStatus>("inputBytes", "Bytes In (5 mins)",
+                "The cumulative size of all FlowFiles that this Processor has pulled from its queues in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ProcessorStatus>() {
+                    @Override
+                    public Long getValue(final ProcessorStatus status) {
+                        return status.getInputBytes();
+                    }
+                })),
+        INPUT_COUNT(new StandardMetricDescriptor<ProcessorStatus>("inputCount", "FlowFiles In (5 mins)",
+                "The number of FlowFiles that this Processor has pulled from its queues in the past 5 minutes", Formatter.COUNT, new ValueMapper<ProcessorStatus>() {
+                    @Override
+                    public Long getValue(final ProcessorStatus status) {
+                        return Long.valueOf(status.getInputCount());
+                    }
+                })),
+        OUTPUT_BYTES(new StandardMetricDescriptor<ProcessorStatus>("outputBytes", "Bytes Out (5 mins)",
+                "The cumulative size of all FlowFiles that this Processor has transferred to downstream queues in the past 5 minutes", Formatter.DATA_SIZE, new ValueMapper<ProcessorStatus>() {
+                    @Override
+                    public Long getValue(final ProcessorStatus status) {
+                        return status.getOutputBytes();
+                    }
+                })),
+        OUTPUT_COUNT(new StandardMetricDescriptor<ProcessorStatus>("outputCount", "FlowFiles Out (5 mins)",
+                "The number of FlowFiles that this Processor has transferred to downstream queues in the past 5 minutes", Formatter.COUNT, new ValueMapper<ProcessorStatus>() {
+                    @Override
+                    public Long getValue(final ProcessorStatus status) {
+                        return Long.valueOf(status.getOutputCount());
+                    }
+                })),
+        TASK_COUNT(new StandardMetricDescriptor<ProcessorStatus>("taskCount", "Tasks (5 mins)", "The number of tasks that this Processor has completed in the past 5 minutes",
+                Formatter.COUNT, new ValueMapper<ProcessorStatus>() {
+                    @Override
+                    public Long getValue(final ProcessorStatus status) {
+                        return Long.valueOf(status.getInvocations());
+                    }
+                })),
+        TASK_MILLIS(new StandardMetricDescriptor<ProcessorStatus>("taskMillis", "Total Task Duration (5 mins)",
+                "The total number of thread-milliseconds that the Processor has used to complete its tasks in the past 5 minutes", Formatter.DURATION, new ValueMapper<ProcessorStatus>() {
+                    @Override
+                    public Long getValue(final ProcessorStatus status) {
+                        return TimeUnit.MILLISECONDS.convert(status.getProcessingNanos(), TimeUnit.NANOSECONDS);
+                    }
+                })),
+        FLOWFILES_REMOVED(new StandardMetricDescriptor<ProcessorStatus>("flowFilesRemoved", "FlowFiles Removed (5 mins)",
+                "The total number of FlowFiles removed by this Processor in the last 5 minutes", Formatter.COUNT, new ValueMapper<ProcessorStatus>() {
+                    @Override
+                    public Long getValue(final ProcessorStatus status) {
+                        return Long.valueOf(status.getFlowFilesRemoved());
+                    }
+                })),
         AVERAGE_LINEAGE_DURATION(new StandardMetricDescriptor<ProcessorStatus>(
                 "averageLineageDuration",
                 "Average Lineage Duration (5 mins)",

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/tasks/ContinuallyRunConnectableTask.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/tasks/ContinuallyRunConnectableTask.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/tasks/ContinuallyRunConnectableTask.java
index 5ecd22e..f3cbb90 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/tasks/ContinuallyRunConnectableTask.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/tasks/ContinuallyRunConnectableTask.java
@@ -35,8 +35,9 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * Continually runs a Connectable as long as the processor has work to do. {@link #call()} will return
- * <code>true</code> if the Connectable should be yielded, <code>false</code> otherwise.
+ * Continually runs a Connectable as long as the processor has work to do.
+ * {@link #call()} will return <code>true</code> if the Connectable should be
+ * yielded, <code>false</code> otherwise.
  */
 public class ContinuallyRunConnectableTask implements Callable<Boolean> {
 
@@ -60,7 +61,7 @@ public class ContinuallyRunConnectableTask implements Callable<Boolean> {
         if (!scheduleState.isScheduled()) {
             return false;
         }
-        
+
         // Connectable should run if the following conditions are met:
         // 1. It is not yielded.
         // 2. It has incoming connections with FlowFiles queued or doesn't expect incoming connections
@@ -106,7 +107,7 @@ public class ContinuallyRunConnectableTask implements Callable<Boolean> {
             // yield for just a bit.
             return true;
         }
-        
-        return false;	// do not yield
+
+        return false; // do not yield
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/tasks/ContinuallyRunProcessorTask.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/tasks/ContinuallyRunProcessorTask.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/tasks/ContinuallyRunProcessorTask.java
index cff8744..baed6ae 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/tasks/ContinuallyRunProcessorTask.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/tasks/ContinuallyRunProcessorTask.java
@@ -43,10 +43,10 @@ import org.apache.nifi.util.ReflectionUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-
 /**
- * Continually runs a processor as long as the processor has work to do. {@link #call()} will return
- * <code>true</code> if the processor should be yielded, <code>false</code> otherwise.
+ * Continually runs a processor as long as the processor has work to do.
+ * {@link #call()} will return <code>true</code> if the processor should be
+ * yielded, <code>false</code> otherwise.
  */
 public class ContinuallyRunProcessorTask implements Callable<Boolean> {
 
@@ -61,7 +61,7 @@ public class ContinuallyRunProcessorTask implements Callable<Boolean> {
     private final int numRelationships;
 
     public ContinuallyRunProcessorTask(final SchedulingAgent schedulingAgent, final ProcessorNode procNode,
-            final FlowController flowController, final ProcessContextFactory contextFactory, final ScheduleState scheduleState, 
+            final FlowController flowController, final ProcessContextFactory contextFactory, final ScheduleState scheduleState,
             final StandardProcessContext processContext) {
 
         this.schedulingAgent = schedulingAgent;
@@ -163,9 +163,9 @@ public class ContinuallyRunProcessorTask implements Callable<Boolean> {
                 if (batch) {
                     rawSession.commit();
                 }
-    
+
                 final long processingNanos = System.nanoTime() - startNanos;
-    
+
                 // if the processor is no longer scheduled to run and this is the last thread,
                 // invoke the OnStopped methods
                 if (!scheduleState.isScheduled() && scheduleState.getActiveThreadCount() == 1 && scheduleState.mustCallOnStoppedMethods()) {
@@ -174,7 +174,7 @@ public class ContinuallyRunProcessorTask implements Callable<Boolean> {
                         flowController.heartbeat();
                     }
                 }
-    
+
                 try {
                     final StandardFlowFileEvent procEvent = new StandardFlowFileEvent(procNode.getIdentifier());
                     procEvent.setProcessingNanos(processingNanos);
@@ -188,7 +188,7 @@ public class ContinuallyRunProcessorTask implements Callable<Boolean> {
                 scheduleState.decrementActiveThreadCount();
             }
         }
-        
+
         return false;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/tasks/ReportingTaskWrapper.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/tasks/ReportingTaskWrapper.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/tasks/ReportingTaskWrapper.java
index 0c472c8..5724bb4 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/tasks/ReportingTaskWrapper.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/tasks/ReportingTaskWrapper.java
@@ -42,7 +42,7 @@ public class ReportingTaskWrapper implements Runnable {
             taskNode.getReportingTask().onTrigger(taskNode.getReportingContext());
         } catch (final Throwable t) {
             final ComponentLog componentLog = new SimpleProcessLogger(taskNode.getIdentifier(), taskNode.getReportingTask());
-            componentLog.error("Error running task {} due to {}", new Object[] {taskNode.getReportingTask(), t.toString()});
+            componentLog.error("Error running task {} due to {}", new Object[]{taskNode.getReportingTask(), t.toString()});
             if (componentLog.isDebugEnabled()) {
                 componentLog.error("", t);
             }
@@ -52,7 +52,9 @@ public class ReportingTaskWrapper implements Runnable {
                 // invoke the OnStopped methods
                 if (!scheduleState.isScheduled() && scheduleState.getActiveThreadCount() == 1 && scheduleState.mustCallOnStoppedMethods()) {
                     try (final NarCloseable x = NarCloseable.withNarLoader()) {
-                        ReflectionUtils.quietlyInvokeMethodsWithAnnotation(OnStopped.class, org.apache.nifi.processor.annotation.OnStopped.class, taskNode.getReportingTask(), taskNode.getConfigurationContext());
+                        ReflectionUtils.quietlyInvokeMethodsWithAnnotation(
+                                OnStopped.class, org.apache.nifi.processor.annotation.OnStopped.class,
+                                taskNode.getReportingTask(), taskNode.getConfigurationContext());
                     }
                 }
             } finally {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/encrypt/StringEncryptor.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/encrypt/StringEncryptor.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/encrypt/StringEncryptor.java
index be79c5b..fccd10e 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/encrypt/StringEncryptor.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/encrypt/StringEncryptor.java
@@ -76,7 +76,7 @@ public final class StringEncryptor {
      * Creates an instance of the nifi sensitive property encryptor. Validates
      * that the encryptor is actually working.
      *
-     * @return
+     * @return encryptor
      * @throws EncryptionException if any issues arise initializing or
      * validating the encryptor
      */

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/engine/FlowEngine.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/engine/FlowEngine.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/engine/FlowEngine.java
index 76e8e3e..3be178f 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/engine/FlowEngine.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/engine/FlowEngine.java
@@ -27,9 +27,6 @@ import java.util.concurrent.ScheduledThreadPoolExecutor;
 import java.util.concurrent.ThreadFactory;
 import java.util.concurrent.atomic.AtomicInteger;
 
-/**
- * @author unattributed
- */
 public final class FlowEngine extends ScheduledThreadPoolExecutor {
 
     private static final Logger logger = LoggerFactory.getLogger(FlowEngine.class);
@@ -39,19 +36,20 @@ public final class FlowEngine extends ScheduledThreadPoolExecutor {
      *
      * @param corePoolSize the maximum number of threads available to tasks
      * running in the engine.
-     * @param threadNamePrefix
+     * @param threadNamePrefix for naming the thread
      */
     public FlowEngine(int corePoolSize, final String threadNamePrefix) {
-    	this(corePoolSize, threadNamePrefix, false);
+        this(corePoolSize, threadNamePrefix, false);
     }
-    	
+
     /**
      * Creates a new instance of FlowEngine
      *
      * @param corePoolSize the maximum number of threads available to tasks
      * running in the engine.
-     * @param threadNamePrefix
-     * @param deamon if true, the thread pool will be populated with daemon threads, otherwise the threads will not be marked as daemon.
+     * @param threadNamePrefix for thread naming
+     * @param daemon if true, the thread pool will be populated with daemon
+     * threads, otherwise the threads will not be marked as daemon.
      */
     public FlowEngine(int corePoolSize, final String threadNamePrefix, final boolean daemon) {
         super(corePoolSize);
@@ -62,8 +60,8 @@ public final class FlowEngine extends ScheduledThreadPoolExecutor {
             @Override
             public Thread newThread(final Runnable r) {
                 final Thread t = defaultThreadFactory.newThread(r);
-                if ( daemon ) {
-                	t.setDaemon(true);
+                if (daemon) {
+                    t.setDaemon(true);
                 }
                 t.setName(threadNamePrefix + " Thread-" + threadIndex.incrementAndGet());
                 return t;
@@ -75,8 +73,8 @@ public final class FlowEngine extends ScheduledThreadPoolExecutor {
      * Hook method called by the running thread whenever a runnable task is
      * given to the thread to run.
      *
-     * @param thread
-     * @param runnable
+     * @param thread thread
+     * @param runnable runnable
      */
     @Override
     protected void beforeExecute(final Thread thread, final Runnable runnable) {
@@ -90,8 +88,8 @@ public final class FlowEngine extends ScheduledThreadPoolExecutor {
      * execution of the runnable completed. Logs the fact of completion and any
      * errors that might have occured.
      *
-     * @param runnable
-     * @param throwable
+     * @param runnable runnable
+     * @param throwable throwable
      */
     @Override
     protected void afterExecute(final Runnable runnable, final Throwable throwable) {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/events/VolatileBulletinRepository.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/events/VolatileBulletinRepository.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/events/VolatileBulletinRepository.java
index 044541b..e8708bd 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/events/VolatileBulletinRepository.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/events/VolatileBulletinRepository.java
@@ -180,7 +180,7 @@ public class VolatileBulletinRepository implements BulletinRepository {
      * bulletin strategy is employed, bulletins will not be persisted in this
      * repository and will sent to the specified strategy instead.
      *
-     * @param strategy
+     * @param strategy bulletin strategy
      */
     public void overrideDefaultBulletinProcessing(final BulletinProcessingStrategy strategy) {
         Objects.requireNonNull(strategy);


[07/11] incubator-nifi git commit: NIFI-271 checkpoint

Posted by jo...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceProvider.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceProvider.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceProvider.java
index 1901fb6..a600699 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceProvider.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceProvider.java
@@ -28,123 +28,149 @@ import org.apache.nifi.controller.ControllerServiceLookup;
 public interface ControllerServiceProvider extends ControllerServiceLookup {
 
     /**
-     * Creates a new Controller Service of the specified type and assigns it the given id. If <code>firstTimeadded</code>
-     * is true, calls any methods that are annotated with {@link OnAdded}
+     * Creates a new Controller Service of the specified type and assigns it the
+     * given id. If <code>firstTimeadded</code> is true, calls any methods that
+     * are annotated with {@link OnAdded}
      *
-     * @param type
-     * @param id
-     * @param firstTimeAdded
-     * @return
+     * @param type of service
+     * @param id of service
+     * @param firstTimeAdded for service
+     * @return the service node
      */
     ControllerServiceNode createControllerService(String type, String id, boolean firstTimeAdded);
 
     /**
-     * Gets the controller service node for the specified identifier. Returns
+     * @param id of the service
+     * @return the controller service node for the specified identifier. Returns
      * <code>null</code> if the identifier does not match a known service
-     *
-     * @param id
-     * @return
      */
     ControllerServiceNode getControllerServiceNode(String id);
-    
+
     /**
-     * Removes the given Controller Service from the flow. This will call all appropriate methods
-     * that have the @OnRemoved annotation.
-     * 
+     * Removes the given Controller Service from the flow. This will call all
+     * appropriate methods that have the @OnRemoved annotation.
+     *
      * @param serviceNode the controller service to remove
-     * 
-     * @throws IllegalStateException if the controller service is not disabled or is not a part of this flow
+     *
+     * @throws IllegalStateException if the controller service is not disabled
+     * or is not a part of this flow
      */
     void removeControllerService(ControllerServiceNode serviceNode);
-    
+
     /**
-     * Enables the given controller service that it can be used by other components
-     * @param serviceNode
+     * Enables the given controller service that it can be used by other
+     * components
+     *
+     * @param serviceNode the service node
      */
     void enableControllerService(ControllerServiceNode serviceNode);
-    
+
     /**
-     * Enables the collection of services. If a service in this collection depends on another service,
-     * the service being depended on must either already be enabled or must be in the collection as well.
-     * @param serviceNodes
+     * Enables the collection of services. If a service in this collection
+     * depends on another service, the service being depended on must either
+     * already be enabled or must be in the collection as well.
+     *
+     * @param serviceNodes the nodes
      */
     void enableControllerServices(Collection<ControllerServiceNode> serviceNodes);
-    
+
     /**
-     * Disables the given controller service so that it cannot be used by other components. This allows
-     * configuration to be updated or allows service to be removed.
-     * @param serviceNode
+     * Disables the given controller service so that it cannot be used by other
+     * components. This allows configuration to be updated or allows service to
+     * be removed.
+     *
+     * @param serviceNode the node
      */
     void disableControllerService(ControllerServiceNode serviceNode);
-    
+
     /**
-     * Returns a Set of all Controller Services that exist for this service provider.
-     * @return
+     * @return a Set of all Controller Services that exist for this service
+     * provider
      */
     Set<ControllerServiceNode> getAllControllerServices();
-    
+
     /**
-     * Verifies that all running Processors and Reporting Tasks referencing the Controller Service (or a service
-     * that depends on the provided service) can be stopped. 
-     * @param serviceNode
-     * 
-     * @throws IllegalStateException if any referencing component cannot be stopped
+     * Verifies that all running Processors and Reporting Tasks referencing the
+     * Controller Service (or a service that depends on the provided service)
+     * can be stopped.
+     *
+     * @param serviceNode the node
+     *
+     * @throws IllegalStateException if any referencing component cannot be
+     * stopped
      */
     void verifyCanStopReferencingComponents(ControllerServiceNode serviceNode);
-    
+
     /**
-     * Recursively unschedules all schedulable components (Processors and Reporting Tasks) that reference the given
-     * Controller Service. For any Controller services that reference this one, its schedulable referencing components will also
-     * be unscheduled.
-     * @param serviceNode
+     * Recursively unschedules all schedulable components (Processors and
+     * Reporting Tasks) that reference the given Controller Service. For any
+     * Controller services that reference this one, its schedulable referencing
+     * components will also be unscheduled.
+     *
+     * @param serviceNode the node
      */
     void unscheduleReferencingComponents(ControllerServiceNode serviceNode);
-    
+
     /**
-     * Verifies that all Controller Services referencing the provided Controller Service can be disabled. 
-     * @param serviceNode
-     * 
-     * @throws IllegalStateException if any referencing service cannot be disabled
+     * Verifies that all Controller Services referencing the provided Controller
+     * Service can be disabled.
+     *
+     * @param serviceNode the node
+     *
+     * @throws IllegalStateException if any referencing service cannot be
+     * disabled
      */
     void verifyCanDisableReferencingServices(ControllerServiceNode serviceNode);
-    
+
     /**
-     * Disables any Controller Service that references the provided Controller Service. This action is performed recursively
-     * so that if service A references B and B references C, disabling references for C will first disable A, then B.
-     * @param serviceNode
+     * Disables any Controller Service that references the provided Controller
+     * Service. This action is performed recursively so that if service A
+     * references B and B references C, disabling references for C will first
+     * disable A, then B.
+     *
+     * @param serviceNode the node
      */
     void disableReferencingServices(ControllerServiceNode serviceNode);
-    
+
     /**
-     * Verifies that all Controller Services referencing the provided ControllerService can be enabled.
-     * @param serviceNode
-     * 
-     * @throws IllegalStateException if any referencing component cannot be enabled
+     * Verifies that all Controller Services referencing the provided
+     * ControllerService can be enabled.
+     *
+     * @param serviceNode the node
+     *
+     * @throws IllegalStateException if any referencing component cannot be
+     * enabled
      */
     void verifyCanEnableReferencingServices(ControllerServiceNode serviceNode);
-    
-    
+
     /**
-     * Enables all Controller Services that are referencing the given service. If Service A references Service B and Service
-     * B references serviceNode, Service A and B will both be enabled.
-     * @param serviceNode
+     * Enables all Controller Services that are referencing the given service.
+     * If Service A references Service B and Service B references serviceNode,
+     * Service A and B will both be enabled.
+     *
+     * @param serviceNode the node
      */
     void enableReferencingServices(ControllerServiceNode serviceNode);
-    
+
     /**
-     * Verifies that all enabled Processors referencing the ControllerService (or a service that depends on 
-     * the provided service) can be scheduled to run.
-     * @param serviceNode
-     * 
-     * @throws IllegalStateException if any referencing component cannot be scheduled
+     * Verifies that all enabled Processors referencing the ControllerService
+     * (or a service that depends on the provided service) can be scheduled to
+     * run.
+     *
+     * @param serviceNode the node
+     *
+     * @throws IllegalStateException if any referencing component cannot be
+     * scheduled
      */
     void verifyCanScheduleReferencingComponents(ControllerServiceNode serviceNode);
-    
+
     /**
-     * Schedules any schedulable component (Processor, ReportingTask) that is referencing the given Controller Service
-     * to run. This is performed recursively, so if a Processor is referencing Service A, which is referencing serviceNode,
-     * then the Processor will also be started.
-     * @param serviceNode
+     * Schedules any schedulable component (Processor, ReportingTask) that is
+     * referencing the given Controller Service to run. This is performed
+     * recursively, so if a Processor is referencing Service A, which is
+     * referencing serviceNode, then the Processor will also be started.
+     *
+     * @param serviceNode the node
      */
     void scheduleReferencingComponents(ControllerServiceNode serviceNode);
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceReference.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceReference.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceReference.java
index 67ffb6c..df18c62 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceReference.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceReference.java
@@ -26,26 +26,21 @@ import org.apache.nifi.controller.ConfiguredComponent;
 public interface ControllerServiceReference {
 
     /**
-     * Returns the component that is being referenced
-     *
-     * @return
+     * @return the component that is being referenced
      */
     ControllerServiceNode getReferencedComponent();
 
     /**
-     * Returns a {@link Set} of all components that are referencing this
+     * @return a {@link Set} of all components that are referencing this
      * Controller Service
-     *
-     * @return
      */
     Set<ConfiguredComponent> getReferencingComponents();
 
     /**
-     * Returns a {@link Set} of all Processors, Reporting Tasks, and Controller Services that are
-     * referencing the Controller Service and are running (in the case of Processors and Reporting Tasks)
-     * or enabled (in the case of Controller Services)
-     *
-     * @return
+     * @return a {@link Set} of all Processors, Reporting Tasks, and Controller
+     * Services that are referencing the Controller Service and are running (in
+     * the case of Processors and Reporting Tasks) or enabled (in the case of
+     * Controller Services)
      */
     Set<ConfiguredComponent> getActiveReferences();
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceState.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceState.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceState.java
index 2ed8fd9..63840e7 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceState.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/service/ControllerServiceState.java
@@ -16,30 +16,28 @@
  */
 package org.apache.nifi.controller.service;
 
-
 /**
  * Represents the valid states for a Controller Service.
  */
 public enum ControllerServiceState {
+
     /**
      * Controller Service is disabled and cannot be used.
      */
     DISABLED,
-    
     /**
-     * Controller Service has been disabled but has not yet finished its lifecycle
-     * methods.
+     * Controller Service has been disabled but has not yet finished its
+     * lifecycle methods.
      */
     DISABLING,
-    
     /**
-     * Controller Service has been enabled but has not yet finished its lifecycle methods.
+     * Controller Service has been enabled but has not yet finished its
+     * lifecycle methods.
      */
     ENABLING,
-    
     /**
-     * Controller Service has been enabled and has finished its lifecycle methods. The Controller SErvice
-     * is ready to be used.
+     * Controller Service has been enabled and has finished its lifecycle
+     * methods. The Controller SErvice is ready to be used.
      */
     ENABLED;
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/groups/ProcessGroup.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/groups/ProcessGroup.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/groups/ProcessGroup.java
index b898638..a9cfb58 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/groups/ProcessGroup.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/groups/ProcessGroup.java
@@ -51,7 +51,7 @@ public interface ProcessGroup {
     /**
      * Updates the ProcessGroup to point to a new parent
      *
-     * @param group
+     * @param group new parent group
      */
     void setParent(ProcessGroup group);
 
@@ -68,19 +68,18 @@ public interface ProcessGroup {
     /**
      * Updates the name of this ProcessGroup.
      *
-     * @param name
+     * @param name new name
      */
     void setName(String name);
 
     /**
      * Updates the position of where this ProcessGroup is located in the graph
+     * @param position new position
      */
     void setPosition(Position position);
 
     /**
-     * Returns the position of where this ProcessGroup is located in the graph
-     *
-     * @return
+     * @return the position of where this ProcessGroup is located in the graph
      */
     Position getPosition();
 
@@ -93,14 +92,12 @@ public interface ProcessGroup {
     /**
      * Updates the comments for this ProcessGroup
      *
-     * @param comments
+     * @param comments new comments
      */
     void setComments(String comments);
 
     /**
-     * Returns the counts for this ProcessGroup
-     *
-     * @return
+     * @return the counts for this ProcessGroup
      */
     ProcessGroupCounts getCounts();
 
@@ -129,18 +126,17 @@ public interface ProcessGroup {
     /**
      * Enables the given Input Port
      *
-     * @param port
+     * @param port to enable
      */
     void enableInputPort(Port port);
 
     /**
      * Enables the given Output Port
      *
-     * @param port
+     * @param port to enable
      */
     void enableOutputPort(Port port);
 
-
     /**
      * Starts the given Processor
      *
@@ -153,46 +149,45 @@ public interface ProcessGroup {
     /**
      * Starts the given Input Port
      *
-     * @param port
+     * @param port to start
      */
     void startInputPort(Port port);
 
     /**
      * Starts the given Output Port
      *
-     * @param port
+     * @param port to start
      */
     void startOutputPort(Port port);
 
     /**
      * Starts the given Funnel
      *
-     * @param funnel
+     * @param funnel to start
      */
     void startFunnel(Funnel funnel);
 
     /**
      * Stops the given Processor
      *
-     * @param processor
+     * @param processor to stop
      */
     void stopProcessor(ProcessorNode processor);
 
     /**
      * Stops the given Port
      *
-     * @param processor
+     * @param port to stop
      */
     void stopInputPort(Port port);
 
     /**
      * Stops the given Port
      *
-     * @param processor
+     * @param port to stop
      */
     void stopOutputPort(Port port);
 
-
     /**
      * Disables the given Processor
      *
@@ -205,18 +200,17 @@ public interface ProcessGroup {
     /**
      * Disables the given Input Port
      *
-     * @param port
+     * @param port to disable
      */
     void disableInputPort(Port port);
 
     /**
      * Disables the given Output Port
      *
-     * @param port
+     * @param port to disable
      */
     void disableOutputPort(Port port);
 
-
     /**
      * Indicates that the Flow is being shutdown; allows cleanup of resources
      * associated with processors, etc.
@@ -224,10 +218,8 @@ public interface ProcessGroup {
     void shutdown();
 
     /**
-     * Returns a boolean indicating whether or not this ProcessGroup is the root
+     * @return a boolean indicating whether or not this ProcessGroup is the root
      * group
-     *
-     * @return
      */
     boolean isRootGroup();
 
@@ -236,7 +228,7 @@ public interface ProcessGroup {
      * external sources to {@link Processor}s and other {@link Port}s within
      * this ProcessGroup.
      *
-     * @param port
+     * @param port to add
      */
     void addInputPort(Port port);
 
@@ -297,7 +289,7 @@ public interface ProcessGroup {
     /**
      * Adds a reference to a ProgressGroup as a child of this.
      *
-     * @return the newly created reference
+     * @param group to add
      */
     void addProcessGroup(ProcessGroup group);
 
@@ -305,8 +297,8 @@ public interface ProcessGroup {
      * Returns the ProcessGroup whose parent is <code>this</code> and whose id
      * is given
      *
-     * @param id
-     * @return
+     * @param id identifier of group to get
+     * @return child group
      */
     ProcessGroup getProcessGroup(String id);
 
@@ -363,12 +355,10 @@ public interface ProcessGroup {
     ProcessorNode getProcessor(String id);
 
     /**
-     * Returns the <code>Connectable</code> with the given ID, or
+     * @param id the ID of the Connectable
+     * @return the <code>Connectable</code> with the given ID, or
      * <code>null</code> if the <code>Connectable</code> is not a member of the
      * group
-     *
-     * @param id the ID of the Connectable
-     * @return
      */
     Connectable getConnectable(String id);
 
@@ -377,7 +367,7 @@ public interface ProcessGroup {
      * the Source and Destination of the Connection that the Connection has been
      * established.
      *
-     * @param connection
+     * @param connection to add
      * @throws NullPointerException if the connection is null
      * @throws IllegalStateException if the source or destination of the
      * connection is not a member of this ProcessGroup or if a connection
@@ -388,7 +378,7 @@ public interface ProcessGroup {
     /**
      * Removes the connection from this ProcessGroup.
      *
-     * @param connection
+     * @param connection to remove
      * @throws IllegalStateException if <code>connection</code> is not contained
      * within this.
      */
@@ -404,35 +394,32 @@ public interface ProcessGroup {
      * this method does not notify either, as both the Source and Destination
      * should already be aware of the Connection.
      *
-     * @param connection
+     * @param connection to inherit
      */
     void inheritConnection(Connection connection);
 
     /**
+     * @param id identifier of connection
      * @return the Connection with the given ID, or <code>null</code> if the
      * connection does not exist.
      */
     Connection getConnection(String id);
 
     /**
-     * Returns the {@link Set} of all {@link Connection}s contained within this.
-     *
-     * @return
+     * @return the {@link Set} of all {@link Connection}s contained within this
      */
     Set<Connection> getConnections();
 
     /**
-     * Returns a List of all Connections contains within this ProcessGroup and
-     * any child ProcessGroups.
-     *
-     * @return
+     * @return a List of all Connections contains within this ProcessGroup and
+     * any child ProcessGroups
      */
     List<Connection> findAllConnections();
 
     /**
      * Adds the given RemoteProcessGroup to this ProcessGroup
      *
-     * @param remoteGroup
+     * @param remoteGroup group to add
      *
      * @throws NullPointerException if the given argument is null
      */
@@ -441,7 +428,7 @@ public interface ProcessGroup {
     /**
      * Removes the given RemoteProcessGroup from this ProcessGroup
      *
-     * @param remoteGroup
+     * @param remoteGroup group to remove
      * @throws NullPointerException if the argument is null
      * @throws IllegalStateException if the given argument does not belong to
      * this ProcessGroup
@@ -449,21 +436,17 @@ public interface ProcessGroup {
     void removeRemoteProcessGroup(RemoteProcessGroup remoteGroup);
 
     /**
-     * Returns the RemoteProcessGroup that is the child of this ProcessGroup and
+     * @param id identifier of group to find
+     * @return the RemoteProcessGroup that is the child of this ProcessGroup and
      * has the given ID. If no RemoteProcessGroup can be found with the given
-     * ID, returns <code>null</code>.
-     *
-     * @param id
-     * @return
+     * ID, returns <code>null</code>
      */
     RemoteProcessGroup getRemoteProcessGroup(String id);
 
     /**
-     * Returns a set of all RemoteProcessGroups that belong to this
+     * @return a set of all RemoteProcessGroups that belong to this
      * ProcessGroup. If no RemoteProcessGroup's have been added to this
-     * ProcessGroup, will return an empty Set.
-     *
-     * @return
+     * ProcessGroup, will return an empty Set
      */
     Set<RemoteProcessGroup> getRemoteProcessGroups();
 
@@ -471,7 +454,6 @@ public interface ProcessGroup {
      * Adds the given Label to this ProcessGroup
      *
      * @param label the label to add
-     * @return
      *
      * @throws NullPointerException if the argument is null
      */
@@ -488,155 +470,129 @@ public interface ProcessGroup {
     void removeLabel(Label label);
 
     /**
-     * Returns a set of all Labels that belong to this ProcessGroup. If no
-     * Labels belong to this ProcessGroup, returns an empty Set.
-     *
-     * @return
+     * @return a set of all Labels that belong to this ProcessGroup. If no
+     * Labels belong to this ProcessGroup, returns an empty Set
      */
     Set<Label> getLabels();
 
     /**
-     * Returns the Label that belongs to this ProcessGroup and has the given id.
-     * If no Label can be found with this ID, returns <code>null</code>.
-     *
-     * @param id
-     * @return
+     * @param id of the label
+     * @return the Label that belongs to this ProcessGroup and has the given id.
+     * If no Label can be found with this ID, returns <code>null</code>
      */
     Label getLabel(String id);
 
     /**
-     * Returns the Process Group with the given ID, if it exists as a child of
+     * @param id of the group
+     * @return the Process Group with the given ID, if it exists as a child of
      * this ProcessGroup, or is this ProcessGroup. This performs a recursive
      * search of all ProcessGroups and descendant ProcessGroups
-     *
-     * @param id
-     * @return
      */
     ProcessGroup findProcessGroup(String id);
 
     /**
-     * Returns the RemoteProcessGroup with the given ID, if it exists as a child
+     * @param id of the group
+     * @return the RemoteProcessGroup with the given ID, if it exists as a child
      * or descendant of this ProcessGroup. This performs a recursive search of
      * all ProcessGroups and descendant ProcessGroups
-     *
-     * @param id
-     * @return
      */
     RemoteProcessGroup findRemoteProcessGroup(String id);
 
     /**
-     * Returns a List of all Remote Process Groups that are children or
+     * @return a List of all Remote Process Groups that are children or
      * descendants of this ProcessGroup. This performs a recursive search of all
      * descendant ProcessGroups
-     *
-     * @return
      */
     List<RemoteProcessGroup> findAllRemoteProcessGroups();
 
     /**
-     * Returns the Processor with the given ID, if it exists as a child or
+     * @param id of the processor node
+     * @return the Processor with the given ID, if it exists as a child or
      * descendant of this ProcessGroup. This performs a recursive search of all
      * descendant ProcessGroups
-     *
-     * @param id
-     * @return
      */
     ProcessorNode findProcessor(String id);
 
     /**
-     * Returns a List of all Processors that are children or descendants of this
+     * @return a List of all Processors that are children or descendants of this
      * ProcessGroup. This performs a recursive search of all descendant
      * ProcessGroups
-     *
-     * @return
      */
     List<ProcessorNode> findAllProcessors();
 
     /**
-     * Returns a List of all Labels that are children or descendants of this
+     * @return a List of all Labels that are children or descendants of this
      * ProcessGroup. This performsn a recursive search of all descendant
      * ProcessGroups
-     *
-     * @return
      */
     List<Label> findAllLabels();
 
     /**
-     * Returns the input port with the given ID, if it exists; otherwise returns
+     * @param id of the port
+     * @return the input port with the given ID, if it exists; otherwise returns
      * null. This performs a recursive search of all Input Ports and descendant
      * ProcessGroups
-     *
-     * @param id
-     * @return
      */
     Port findInputPort(String id);
 
     /**
-     * Returns the input port with the given name, if it exists; otherwise
-     * returns null. ProcessGroups
-     *
-     * @param name
-     * @return
+     * @param name of port
+     * @return the input port with the given name, if it exists; otherwise
+     * returns null
      */
     Port getInputPortByName(String name);
 
     /**
-     * Returns the output port with the given ID, if it exists; otherwise
+     * @param id of the port
+     * @return the output port with the given ID, if it exists; otherwise
      * returns null. This performs a recursive search of all Output Ports and
      * descendant ProcessGroups
-     *
-     * @param id
-     * @return
      */
     Port findOutputPort(String id);
 
     /**
-     * Returns the output port with the given name, if it exists; otherwise
-     * returns null.
-     *
-     * @param name
-     * @return
+     * @param name of the port
+     * @return the output port with the given name, if it exists; otherwise
+     * returns null
      */
     Port getOutputPortByName(String name);
 
     /**
-     * Adds the given funnel to this ProcessGroup and starts it. While other components
-     * do not automatically start, the funnel does by default because it is intended to be
-     * more of a notional component that users are unable to explicitly start and stop.
-     * However, there is an override available in {@link #addFunnel(Funnel, boolean)} because
-     * we may need to avoid starting the funnel on restart until the flow is completely
-     * initialized.
+     * Adds the given funnel to this ProcessGroup and starts it. While other
+     * components do not automatically start, the funnel does by default because
+     * it is intended to be more of a notional component that users are unable
+     * to explicitly start and stop. However, there is an override available in
+     * {@link #addFunnel(Funnel, boolean)} because we may need to avoid starting
+     * the funnel on restart until the flow is completely initialized.
      *
-     * @param funnel
+     * @param funnel to add
      */
     void addFunnel(Funnel funnel);
-    
+
     /**
-     * Adds the given funnel to this ProcessGroup and optionally starts the funnel.
-     * @param funnel
-     * @param autoStart
+     * Adds the given funnel to this ProcessGroup and optionally starts the
+     * funnel.
+     *
+     * @param funnel to add
+     * @param autoStart true if should auto start
      */
     void addFunnel(Funnel funnel, boolean autoStart);
 
     /**
-     * Returns a Set of all Funnels that belong to this ProcessGroup
-     *
-     * @return
+     * @return a Set of all Funnels that belong to this ProcessGroup
      */
     Set<Funnel> getFunnels();
 
     /**
-     * Returns the funnel with the given identifier
-     *
-     * @param id
-     * @return
+     * @param id of the funnel
+     * @return the funnel with the given identifier
      */
     Funnel getFunnel(String id);
 
     /**
      * Removes the given funnel from this ProcessGroup
      *
-     * @param funnel
+     * @param funnel to remove
      *
      * @throws IllegalStateException if the funnel is not a member of this
      * ProcessGroup or has incoming or outgoing connections
@@ -654,7 +610,7 @@ public interface ProcessGroup {
      * Removes all of the components whose ID's are specified within the given
      * {@link Snippet} from this ProcessGroup.
      *
-     * @param snippet
+     * @param snippet to remove
      *
      * @throws NullPointerException if argument is null
      * @throws IllegalStateException if any ID in the snippet refers to a
@@ -663,12 +619,10 @@ public interface ProcessGroup {
     void remove(final Snippet snippet);
 
     /**
-     * Returns the Connectable with the given ID, if it exists; otherwise
+     * @param identifier of connectable
+     * @return the Connectable with the given ID, if it exists; otherwise
      * returns null. This performs a recursive search of all ProcessGroups'
      * input ports, output ports, funnels, processors, and remote process groups
-     *
-     * @param identifier
-     * @return
      */
     Connectable findConnectable(String identifier);
 
@@ -677,10 +631,9 @@ public interface ProcessGroup {
      * {@link Snippet} from this ProcessGroup into the given destination
      * ProcessGroup
      *
-     * @param snippet
-     * @param destination
-     *
-     * @throws NullPointerExcepiton if either argument is null
+     * @param snippet to move
+     * @param destination where to move
+     * @throws NullPointerException if either argument is null
      * @throws IllegalStateException if any ID in the snippet refers to a
      * component that is not within this ProcessGroup
      */
@@ -696,7 +649,7 @@ public interface ProcessGroup {
      * Ensures that deleting the given snippet is a valid operation at this
      * point in time, depending on the state of this ProcessGroup
      *
-     * @param snippet
+     * @param snippet to delete
      *
      * @throws IllegalStateException if deleting the Snippet is not valid at
      * this time
@@ -708,8 +661,8 @@ public interface ProcessGroup {
      * operation at this point in time, depending on the state of both
      * ProcessGroups
      *
-     * @param snippet
-     * @param newProcessGroup
+     * @param snippet to move
+     * @param newProcessGroup new location
      *
      * @throws IllegalStateException if the move is not valid at this time
      */

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/groups/RemoteProcessGroup.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/groups/RemoteProcessGroup.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/groups/RemoteProcessGroup.java
index c842195..db05313 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/groups/RemoteProcessGroup.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/groups/RemoteProcessGroup.java
@@ -45,13 +45,11 @@ public interface RemoteProcessGroup {
     void setComments(String comments);
 
     void shutdown();
-    
+
     /**
-     * Returns the name of this RemoteProcessGroup. The value returned will
+     * @return the name of this RemoteProcessGroup. The value returned will
      * never be null. If unable to communicate with the remote instance, the URI
      * of that instance may be returned instead
-     *
-     * @return
      */
     String getName();
 
@@ -78,36 +76,30 @@ public interface RemoteProcessGroup {
     void setYieldDuration(final String yieldDuration);
 
     String getYieldDuration();
-    
+
     /**
      * Sets the timeout using the TimePeriod format (e.g., "30 secs", "1 min")
      *
-     * @param timePeriod
-     * @throws IllegalArgumentException
+     * @param timePeriod new period
+     * @throws IllegalArgumentException iae
      */
     void setCommunicationsTimeout(String timePeriod) throws IllegalArgumentException;
 
     /**
-     * Returns the communications timeout in terms of the given TimeUnit
-     *
-     * @param timeUnit
-     * @return
+     * @param timeUnit unit of time to report timeout
+     * @return the communications timeout in terms of the given TimeUnit
      */
     int getCommunicationsTimeout(TimeUnit timeUnit);
 
     /**
-     * Returns the user-configured String representation of the communications
+     * @return the user-configured String representation of the communications
      * timeout
-     *
-     * @return
      */
     String getCommunicationsTimeout();
 
     /**
-     * Indicates whether or not the RemoteProcessGroup is currently scheduled to
+     * @return Indicates whether or not the RemoteProcessGroup is currently scheduled to
      * transmit data
-     *
-     * @return
      */
     boolean isTransmitting();
 
@@ -126,7 +118,7 @@ public interface RemoteProcessGroup {
      * Initiates communications between this instance and the remote instance
      * only for the port specified.
      *
-     * @param port
+     * @param port port to start
      */
     void startTransmitting(RemoteGroupPort port);
 
@@ -134,47 +126,38 @@ public interface RemoteProcessGroup {
      * Immediately terminates communications between this instance and the
      * remote instance only for the port specified.
      *
-     * @param port
+     * @param port to stop
      */
     void stopTransmitting(RemoteGroupPort port);
 
     /**
-     * Indicates whether or not communications with this RemoteProcessGroup will
+     * @return Indicates whether or not communications with this RemoteProcessGroup will
      * be secure (2-way authentication)
-     *
-     * @return
+     * @throws org.apache.nifi.controller.exception.CommunicationsException ce
      */
     boolean isSecure() throws CommunicationsException;
 
     /**
-     * Indicates whether or not communications with this RemoteProcessGroup will
+     * @return Indicates whether or not communications with this RemoteProcessGroup will
      * be secure (2-way authentication). Returns null if unknown.
-     *
-     * @return
      */
     Boolean getSecureFlag();
 
     /**
-     * Returns true if the target system has site to site enabled. Returns false
-     * otherwise (they don't or they have not yet responded).
-     *
-     * @return
+     * @return true if the target system has site to site enabled. Returns false
+     * otherwise (they don't or they have not yet responded)
      */
     boolean isSiteToSiteEnabled();
 
     /**
-     * Returns a String indicating why we are not authorized to communicate with
+     * @return a String indicating why we are not authorized to communicate with
      * the remote instance, or <code>null</code> if we are authorized
-     *
-     * @return
      */
     String getAuthorizationIssue();
 
     /**
-     * Returns the {@link EventReporter} that can be used to report any notable
+     * @return the {@link EventReporter} that can be used to report any notable
      * events
-     *
-     * @return
      */
     EventReporter getEventReporter();
 
@@ -195,11 +178,10 @@ public interface RemoteProcessGroup {
      * Removes a port that no longer exists on the remote instance from this
      * RemoteProcessGroup
      *
-     * @param port
+     * @param port to remove
      */
     void removeNonExistentPort(final RemoteGroupPort port);
 
-
     /**
      * Called whenever RemoteProcessGroup is removed from the flow, so that any
      * resources can be cleaned up appropriately.

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/groups/RemoteProcessGroupPortDescriptor.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/groups/RemoteProcessGroupPortDescriptor.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/groups/RemoteProcessGroupPortDescriptor.java
index fb4f6e0..4d7f774 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/groups/RemoteProcessGroupPortDescriptor.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/groups/RemoteProcessGroupPortDescriptor.java
@@ -19,73 +19,53 @@ package org.apache.nifi.groups;
 public interface RemoteProcessGroupPortDescriptor {
 
     /**
-     * The comments as configured in the target port.
-     *
-     * @return
+     * @return comments as configured in the target port
      */
     String getComments();
 
     /**
-     * The number tasks that may transmit flow files to the target port
-     * concurrently.
-     *
-     * @return
+     * @return The number tasks that may transmit flow files to the target port
+     * concurrently
      */
     Integer getConcurrentlySchedulableTaskCount();
 
     /**
-     * The id of the target port.
-     *
-     * @return
+     * @return id of the target port
      */
     String getId();
 
     /**
-     * The id of the remote process group that this port resides in.
-     *
-     * @return
+     * @return id of the remote process group that this port resides in
      */
     String getGroupId();
 
     /**
-     * The name of the target port.
-     *
-     * @return
+     * @return name of the target port
      */
     String getName();
 
     /**
-     * Whether or not this remote group port is configured for transmission.
-     *
-     * @return
+     * @return Whether or not this remote group port is configured for transmission
      */
     Boolean isTransmitting();
 
     /**
-     * Whether or not flow file are compressed when sent to this target port.
-     *
-     * @return
+     * @return Whether or not flow file are compressed when sent to this target port
      */
     Boolean getUseCompression();
 
     /**
-     * Whether ot not the target port exists.
-     *
-     * @return
+     * @return Whether or not the target port exists
      */
     Boolean getExists();
 
     /**
-     * Whether or not the target port is running.
-     *
-     * @return
+     * @return Whether or not the target port is running
      */
     Boolean isTargetRunning();
 
     /**
-     * Whether or not this port has either an incoming or outgoing connection.
-     *
-     * @return
+     * @return Whether or not this port has either an incoming or outgoing connection
      */
     Boolean isConnected();
 

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/logging/LogRepository.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/logging/LogRepository.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/logging/LogRepository.java
index 4a017ce..92091da 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/logging/LogRepository.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/logging/LogRepository.java
@@ -30,33 +30,33 @@ public interface LogRepository {
      * Registers an observer so that it will be notified of all Log Messages
      * whose levels are at least equal to the given level.
      *
-     * @param observerIdentifier
-     * @param level
-     * @param observer
+     * @param observerIdentifier identifier of observer
+     * @param level of logs the observer wants
+     * @param observer the observer
      */
     void addObserver(String observerIdentifier, LogLevel level, LogObserver observer);
 
     /**
      * Sets the observation level of the specified observer.
      *
-     * @param observerIdentifier
-     * @param level
+     * @param observerIdentifier identifier of observer
+     * @param level of logs the observer wants
      */
     void setObservationLevel(String observerIdentifier, LogLevel level);
 
     /**
      * Gets the observation level for the specified observer.
      *
-     * @param observerIdentifier
-     * @return
+     * @param observerIdentifier identifier of observer
+     * @return level
      */
     LogLevel getObservationLevel(String observerIdentifier);
 
     /**
      * Removes the given LogObserver from this Repository.
      *
-     * @param observerIdentifier
-     * @return 
+     * @param observerIdentifier identifier of observer
+     * @return old log observer
      */
     LogObserver removeObserver(String observerIdentifier);
 

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/nar/NarThreadContextClassLoader.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/nar/NarThreadContextClassLoader.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/nar/NarThreadContextClassLoader.java
index aa905a8..9471ba6 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/nar/NarThreadContextClassLoader.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/nar/NarThreadContextClassLoader.java
@@ -40,8 +40,7 @@ import org.apache.nifi.provenance.ProvenanceEventRepository;
 import org.apache.nifi.reporting.ReportingTask;
 
 /**
- *
- * @author none THREAD SAFE
+ * THREAD SAFE
  */
 public class NarThreadContextClassLoader extends URLClassLoader {
 
@@ -125,7 +124,7 @@ public class NarThreadContextClassLoader extends URLClassLoader {
                 // contains the class or resource that we are looking for.
                 // This locks the current Thread into the appropriate NAR ClassLoader Context. The framework will change
                 // the ContextClassLoader back to the NarThreadContextClassLoader as appropriate via the
-                // {@link FlowEngine.beforeExecute(Thread, Runnable)} and 
+                // {@link FlowEngine.beforeExecute(Thread, Runnable)} and
                 // {@link FlowEngine.afterExecute(Thread, Runnable)} methods.
                 if (desiredClassLoader instanceof NarClassLoader) {
                     Thread.currentThread().setContextClassLoader(desiredClassLoader);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/remote/RemoteGroupPort.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/remote/RemoteGroupPort.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/remote/RemoteGroupPort.java
index f08277c..8cad103 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/remote/RemoteGroupPort.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/remote/RemoteGroupPort.java
@@ -25,11 +25,11 @@ import org.apache.nifi.groups.RemoteProcessGroup;
 
 public abstract class RemoteGroupPort extends AbstractPort implements Port, RemoteDestination {
 
-	public RemoteGroupPort(String id, String name, ProcessGroup processGroup, ConnectableType type, ProcessScheduler scheduler) {
-		super(id, name, processGroup, type, scheduler);
-	}
+    public RemoteGroupPort(String id, String name, ProcessGroup processGroup, ConnectableType type, ProcessScheduler scheduler) {
+        super(id, name, processGroup, type, scheduler);
+    }
 
-	public abstract RemoteProcessGroup getRemoteProcessGroup();
+    public abstract RemoteProcessGroup getRemoteProcessGroup();
 
     public abstract TransferDirection getTransferDirection();
 

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/remote/RootGroupPort.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/remote/RootGroupPort.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/remote/RootGroupPort.java
index 4afdfb7..b60e789 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/remote/RootGroupPort.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/remote/RootGroupPort.java
@@ -42,36 +42,36 @@ public interface RootGroupPort extends Port {
      * and returns a {@link PortAuthorizationResult} indicating why the user is
      * unauthorized if this assumption fails
      *
-     * @param dn
-     * @return
+     * @param dn dn of user
+     * @return result
      */
     PortAuthorizationResult checkUserAuthorization(String dn);
 
     /**
      * Receives data from the given stream
      *
-     * @param peer
-     * @param serverProtocol
-     * @param requestHeaders
+     * @param peer peer
+     * @param serverProtocol protocol
+     * @param requestHeaders headers
      *
      * @return the number of FlowFiles received
-     * @throws org.apache.nifi.remote.exception.NotAuthorizedException
-     * @throws org.apache.nifi.remote.exception.BadRequestException
-     * @throws org.apache.nifi.remote.exception.RequestExpiredException
+     * @throws org.apache.nifi.remote.exception.NotAuthorizedException nae
+     * @throws org.apache.nifi.remote.exception.BadRequestException bre
+     * @throws org.apache.nifi.remote.exception.RequestExpiredException ree
      */
     int receiveFlowFiles(Peer peer, ServerProtocol serverProtocol, Map<String, String> requestHeaders) throws NotAuthorizedException, BadRequestException, RequestExpiredException;
 
     /**
      * Transfers data to the given stream
      *
-     * @param peer
-     * @param requestHeaders
-     * @param serverProtocol
+     * @param peer peer
+     * @param requestHeaders headers
+     * @param serverProtocol protocol
      *
      * @return the number of FlowFiles transferred
-     * @throws org.apache.nifi.remote.exception.NotAuthorizedException
-     * @throws org.apache.nifi.remote.exception.BadRequestException
-     * @throws org.apache.nifi.remote.exception.RequestExpiredException
+     * @throws org.apache.nifi.remote.exception.NotAuthorizedException nae
+     * @throws org.apache.nifi.remote.exception.BadRequestException bre
+     * @throws org.apache.nifi.remote.exception.RequestExpiredException ree
      */
     int transferFlowFiles(Peer peer, ServerProtocol serverProtocol, Map<String, String> requestHeaders) throws NotAuthorizedException, BadRequestException, RequestExpiredException;
 

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/remote/protocol/ServerProtocol.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/remote/protocol/ServerProtocol.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/remote/protocol/ServerProtocol.java
index 0118534..6fbb88c 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/remote/protocol/ServerProtocol.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/remote/protocol/ServerProtocol.java
@@ -26,7 +26,6 @@ import org.apache.nifi.remote.RootGroupPort;
 import org.apache.nifi.remote.VersionedRemoteResource;
 import org.apache.nifi.remote.cluster.NodeInformant;
 import org.apache.nifi.remote.codec.FlowFileCodec;
-import org.apache.nifi.remote.exception.BadRequestException;
 import org.apache.nifi.remote.exception.HandshakeException;
 import org.apache.nifi.remote.exception.ProtocolException;
 
@@ -34,7 +33,7 @@ public interface ServerProtocol extends VersionedRemoteResource {
 
     /**
      *
-     * @param rootGroup
+     * @param rootGroup group
      */
     void setRootProcessGroup(ProcessGroup rootGroup);
 
@@ -45,25 +44,23 @@ public interface ServerProtocol extends VersionedRemoteResource {
      * NodeInformant is supported. Otherwise, throws
      * UnsupportedOperationException
      *
-     * @param nodeInformant
+     * @param nodeInformant informant
      */
     void setNodeInformant(NodeInformant nodeInformant);
 
     /**
      * Receives the handshake from the Peer
      *
-     * @param peer
-     * @throws IOException
-     * @throws HandshakeException
+     * @param peer peer
+     * @throws IOException ioe
+     * @throws HandshakeException he
      */
     void handshake(Peer peer) throws IOException, HandshakeException;
 
     /**
-     * Returns <code>true</code> if the handshaking process was completed
+     * @return <code>true</code> if the handshaking process was completed
      * successfully, <code>false</code> if either the handshaking process has
      * not happened or the handshake failed
-     *
-     * @return
      */
     boolean isHandshakeSuccessful();
 
@@ -71,61 +68,61 @@ public interface ServerProtocol extends VersionedRemoteResource {
      * Negotiates the FlowFileCodec that is to be used for transferring
      * FlowFiles
      *
-     * @param peer
-     * @return
-     * @throws IOException
-     * @throws BadRequestException
+     * @param peer peer
+     * @return the codec to use
+     * @throws IOException ioe
+     * @throws org.apache.nifi.remote.exception.ProtocolException pe
      */
     FlowFileCodec negotiateCodec(Peer peer) throws IOException, ProtocolException;
 
     /**
-     * Returns the codec that has already been negotiated by this Protocol, if
-     * any.
-     *
-     * @return
+     * @return the codec that has already been negotiated by this Protocol, if
+     * any
      */
     FlowFileCodec getPreNegotiatedCodec();
 
     /**
      * Reads the Request Type of the next request from the Peer
      *
+     * @param peer peer
      * @return the RequestType that the peer would like to happen - or null, if
      * no data available
+     * @throws java.io.IOException ioe
      */
     RequestType getRequestType(Peer peer) throws IOException;
 
     /**
      * Sends FlowFiles to the specified peer
      *
-     * @param peer
-     * @param context
-     * @param session
-     * @param codec
+     * @param peer peer
+     * @param context context
+     * @param session session
+     * @param codec codec
      *
      * @return the number of FlowFiles transferred
+     * @throws java.io.IOException ioe
+     * @throws org.apache.nifi.remote.exception.ProtocolException pe
      */
     int transferFlowFiles(Peer peer, ProcessContext context, ProcessSession session, FlowFileCodec codec) throws IOException, ProtocolException;
 
     /**
      * Receives FlowFiles from the specified peer
      *
-     * @param peer
-     * @param context
-     * @param session
-     * @param codec
-     * @throws IOException
+     * @param peer peer
+     * @param context context
+     * @param session session
+     * @param codec codec
+     * @throws IOException ioe
      *
      * @return the number of FlowFiles received
-     * @throws ProtocolException
+     * @throws ProtocolException pe
      */
     int receiveFlowFiles(Peer peer, ProcessContext context, ProcessSession session, FlowFileCodec codec) throws IOException, ProtocolException;
 
     /**
-     * Returns the number of milliseconds after a request is received for which
+     * @return the number of milliseconds after a request is received for which
      * the request is still valid. A valid of 0 indicates that the request will
-     * not expire.
-     *
-     * @return
+     * not expire
      */
     long getRequestExpiration();
 
@@ -133,7 +130,8 @@ public interface ServerProtocol extends VersionedRemoteResource {
      * Sends a list of all nodes in the cluster to the specified peer. If not in
      * a cluster, sends info about itself
      *
-     * @param peer
+     * @param peer peer
+     * @throws java.io.IOException ioe
      */
     void sendPeerList(Peer peer) throws IOException;
 

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/connectable/StandardConnection.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/connectable/StandardConnection.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/connectable/StandardConnection.java
index 1d723b5..b2feab5 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/connectable/StandardConnection.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/connectable/StandardConnection.java
@@ -71,18 +71,22 @@ public final class StandardConnection implements Connection {
         hashCode = new HashCodeBuilder(7, 67).append(id).toHashCode();
     }
 
+    @Override
     public ProcessGroup getProcessGroup() {
         return processGroup.get();
     }
 
+    @Override
     public String getIdentifier() {
         return id;
     }
 
+    @Override
     public String getName() {
         return name.get();
     }
 
+    @Override
     public void setName(final String name) {
         this.name.set(name);
     }
@@ -97,10 +101,12 @@ public final class StandardConnection implements Connection {
         this.bendPoints.set(Collections.unmodifiableList(new ArrayList<>(position)));
     }
 
+    @Override
     public int getLabelIndex() {
         return labelIndex.get();
     }
 
+    @Override
     public void setLabelIndex(final int labelIndex) {
         this.labelIndex.set(labelIndex);
     }
@@ -115,22 +121,27 @@ public final class StandardConnection implements Connection {
         this.zIndex.set(zIndex);
     }
 
+    @Override
     public Connectable getSource() {
         return source;
     }
 
+    @Override
     public Connectable getDestination() {
         return destination.get();
     }
 
+    @Override
     public Collection<Relationship> getRelationships() {
         return relationships.get();
     }
 
+    @Override
     public FlowFileQueue getFlowFileQueue() {
         return flowFileQueue;
     }
 
+    @Override
     public void setProcessGroup(final ProcessGroup newGroup) {
         final ProcessGroup currentGroup = this.processGroup.get();
         try {
@@ -141,6 +152,7 @@ public final class StandardConnection implements Connection {
         }
     }
 
+    @Override
     public void setRelationships(final Collection<Relationship> newRelationships) {
         final Collection<Relationship> currentRelationships = relationships.get();
         if (currentRelationships.equals(newRelationships)) {
@@ -160,6 +172,7 @@ public final class StandardConnection implements Connection {
         }
     }
 
+    @Override
     public void setDestination(final Connectable newDestination) {
         final Connectable previousDestination = destination.get();
         if (previousDestination.equals(newDestination)) {
@@ -223,7 +236,7 @@ public final class StandardConnection implements Connection {
      * consumers. This allows us to ensure that the Connection is not deleted
      * during the middle of a Session commit.
      *
-     * @param flowFile
+     * @param flowFile to add
      */
     @Override
     public void enqueue(final FlowFileRecord flowFile) {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FileSystemSwapManager.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FileSystemSwapManager.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FileSystemSwapManager.java
index e1d80b0..3041ada 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FileSystemSwapManager.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FileSystemSwapManager.java
@@ -83,7 +83,7 @@ public class FileSystemSwapManager implements FlowFileSwapManager {
     public static final int MINIMUM_SWAP_COUNT = 10000;
     private static final Pattern SWAP_FILE_PATTERN = Pattern.compile("\\d+-.+\\.swap");
     private static final Pattern TEMP_SWAP_FILE_PATTERN = Pattern.compile("\\d+-.+\\.swap\\.part");
-    
+
     public static final int SWAP_ENCODING_VERSION = 6;
     public static final String EVENT_CATEGORY = "Swap FlowFiles";
 
@@ -99,14 +99,14 @@ public class FileSystemSwapManager implements FlowFileSwapManager {
     private final long swapOutMillis;
     private final int swapOutThreadCount;
 
-    private ContentClaimManager claimManager;	// effectively final
+    private ContentClaimManager claimManager; // effectively final
 
     private static final Logger logger = LoggerFactory.getLogger(FileSystemSwapManager.class);
 
     public FileSystemSwapManager() {
         final NiFiProperties properties = NiFiProperties.getInstance();
         final Path flowFileRepoPath = properties.getFlowFileRepositoryPath();
-        
+
         this.storageDirectory = flowFileRepoPath.resolve("swap").toFile();
         if (!storageDirectory.exists() && !storageDirectory.mkdirs()) {
             throw new RuntimeException("Cannot create Swap Storage directory " + storageDirectory.getAbsolutePath());
@@ -138,6 +138,7 @@ public class FileSystemSwapManager implements FlowFileSwapManager {
         }
     }
 
+    @Override
     public synchronized void start(final FlowFileRepository flowFileRepository, final QueueProvider connectionProvider, final ContentClaimManager claimManager, final EventReporter eventReporter) {
         this.claimManager = claimManager;
         this.flowFileRepository = flowFileRepository;
@@ -244,7 +245,8 @@ public class FileSystemSwapManager implements FlowFileSwapManager {
         return deserializeFlowFiles(in, numRecords, queue, swapEncodingVersion, false, claimManager);
     }
 
-    static List<FlowFileRecord> deserializeFlowFiles(final DataInputStream in, final int numFlowFiles, final FlowFileQueue queue, final int serializationVersion, final boolean incrementContentClaims, final ContentClaimManager claimManager) throws IOException {
+    static List<FlowFileRecord> deserializeFlowFiles(final DataInputStream in, final int numFlowFiles, final FlowFileQueue queue,
+            final int serializationVersion, final boolean incrementContentClaims, final ContentClaimManager claimManager) throws IOException {
         final List<FlowFileRecord> flowFiles = new ArrayList<>();
         for (int i = 0; i < numFlowFiles; i++) {
             // legacy encoding had an "action" because it used to be couple with FlowFile Repository code
@@ -451,15 +453,15 @@ public class FileSystemSwapManager implements FlowFileSwapManager {
                                 }
                             } catch (final EOFException eof) {
                                 error("Failed to Swap In FlowFiles for " + flowFileQueue + " due to: Corrupt Swap File; will remove this Swap File: " + swapFile);
-                                
-                                if ( !swapFile.delete() ) {
+
+                                if (!swapFile.delete()) {
                                     warn("Failed to remove corrupt Swap File " + swapFile + "; This file should be cleaned up manually");
                                 }
                             } catch (final FileNotFoundException fnfe) {
                                 error("Failed to Swap In FlowFiles for " + flowFileQueue + " due to: Could not find Swap File " + swapFile);
                             } catch (final Exception e) {
                                 error("Failed to Swap In FlowFiles for " + flowFileQueue + " due to " + e, e);
-                                
+
                                 if (swapFile != null) {
                                     queue.add(swapFile);
                                 }
@@ -475,27 +477,27 @@ public class FileSystemSwapManager implements FlowFileSwapManager {
 
     private void error(final String error, final Throwable t) {
         error(error);
-        if ( logger.isDebugEnabled() ) {
+        if (logger.isDebugEnabled()) {
             logger.error("", t);
         }
     }
-    
+
     private void error(final String error) {
         logger.error(error);
-        if ( eventReporter != null ) {
+        if (eventReporter != null) {
             eventReporter.reportEvent(Severity.ERROR, EVENT_CATEGORY, error);
         }
     }
-    
+
     private void warn(final String warning) {
         logger.warn(warning);
-        if ( eventReporter != null ) {
+        if (eventReporter != null) {
             eventReporter.reportEvent(Severity.WARNING, EVENT_CATEGORY, warning);
         }
     }
-    
-    
+
     private class SwapOutTask implements Runnable {
+
         private final BlockingQueue<FlowFileQueue> connectionQueue;
 
         public SwapOutTask(final BlockingQueue<FlowFileQueue> connectionQueue) {
@@ -527,8 +529,8 @@ public class FileSystemSwapManager implements FlowFileSwapManager {
                             recordsSwapped = serializeFlowFiles(toSwap, flowFileQueue, swapLocation, fos);
                             fos.getFD().sync();
                         }
-                        
-                        if ( swapTempFile.renameTo(swapFile) ) {
+
+                        if (swapTempFile.renameTo(swapFile)) {
                             flowFileRepository.swapFlowFilesOut(toSwap, flowFileQueue, swapLocation);
                         } else {
                             error("Failed to swap out FlowFiles from " + flowFileQueue + " due to: Unable to rename swap file from " + swapTempFile + " to " + swapFile);
@@ -563,8 +565,8 @@ public class FileSystemSwapManager implements FlowFileSwapManager {
      * Recovers FlowFiles from all Swap Files, returning the largest FlowFile ID
      * that was recovered.
      *
-     * @param queueProvider
-     * @return
+     * @param queueProvider provider
+     * @return the largest FlowFile ID that was recovered
      */
     @Override
     public long recoverSwappedFlowFiles(final QueueProvider queueProvider, final ContentClaimManager claimManager) {
@@ -591,16 +593,16 @@ public class FileSystemSwapManager implements FlowFileSwapManager {
         long maxRecoveredId = 0L;
 
         for (final File swapFile : swapFiles) {
-            if ( TEMP_SWAP_FILE_PATTERN.matcher(swapFile.getName()).matches() ) {
-                if ( swapFile.delete() ) {
+            if (TEMP_SWAP_FILE_PATTERN.matcher(swapFile.getName()).matches()) {
+                if (swapFile.delete()) {
                     logger.info("Removed incomplete/temporary Swap File " + swapFile);
                 } else {
                     warn("Failed to remove incomplete/temporary Swap File " + swapFile + "; this file should be cleaned up manually");
                 }
-                
+
                 continue;
             }
-            
+
             // read record to disk via the swap file
             try (final InputStream fis = new FileInputStream(swapFile);
                     final InputStream bufferedIn = new BufferedInputStream(fis);
@@ -618,7 +620,8 @@ public class FileSystemSwapManager implements FlowFileSwapManager {
                 final String connectionId = in.readUTF();
                 final FlowFileQueue queue = queueMap.get(connectionId);
                 if (queue == null) {
-                    error("Cannot recover Swapped FlowFiles from Swap File " + swapFile + " because the FlowFiles belong to a Connection with ID " + connectionId + " and that Connection does not exist");
+                    error("Cannot recover Swapped FlowFiles from Swap File " + swapFile + " because the FlowFiles belong to a Connection with ID "
+                            + connectionId + " and that Connection does not exist");
                     continue;
                 }
 


[06/11] incubator-nifi git commit: NIFI-271 checkpoint

Posted by jo...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowController.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowController.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowController.java
index ec25ab1..07e754e 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowController.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowController.java
@@ -457,11 +457,12 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
         rootGroup.setName(DEFAULT_ROOT_GROUP_NAME);
         instanceId = UUID.randomUUID().toString();
 
-        if (remoteInputSocketPort == null){
+        if (remoteInputSocketPort == null) {
             LOG.info("Not enabling Site-to-Site functionality because nifi.remote.input.socket.port is not set");
             externalSiteListener = null;
         } else if (isSiteToSiteSecure && sslContext == null) {
-            LOG.error("Unable to create Secure Site-to-Site Listener because not all required Keystore/Truststore Properties are set. Site-to-Site functionality will be disabled until this problem is has been fixed.");
+            LOG.error("Unable to create Secure Site-to-Site Listener because not all required Keystore/Truststore "
+                    + "Properties are set. Site-to-Site functionality will be disabled until this problem is has been fixed.");
             externalSiteListener = null;
         } else {
             // Register the SocketFlowFileServerProtocol as the appropriate resource for site-to-site Server Protocol
@@ -530,7 +531,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
             }
         };
     }
-    
+
     public void initializeFlow() throws IOException {
         writeLock.lock();
         try {
@@ -584,17 +585,19 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
      * Causes any processors that were added to the flow with a 'delayStart'
      * flag of true to now start
      * </p>
+     *
+     * @param startDelayedComponents true if start
      */
     public void onFlowInitialized(final boolean startDelayedComponents) {
         writeLock.lock();
         try {
-            if ( startDelayedComponents ) {
+            if (startDelayedComponents) {
                 LOG.info("Starting {} processors/ports/funnels", (startConnectablesAfterInitialization.size() + startRemoteGroupPortsAfterInitialization.size()));
                 for (final Connectable connectable : startConnectablesAfterInitialization) {
                     if (connectable.getScheduledState() == ScheduledState.DISABLED) {
                         continue;
                     }
-    
+
                     try {
                         if (connectable instanceof ProcessorNode) {
                             connectable.getProcessGroup().startProcessor((ProcessorNode) connectable);
@@ -603,14 +606,14 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
                         }
                     } catch (final Throwable t) {
                         LOG.error("Unable to start {} due to {}", new Object[]{connectable, t.toString()});
-                        if ( LOG.isDebugEnabled() ) {
+                        if (LOG.isDebugEnabled()) {
                             LOG.error("", t);
                         }
                     }
                 }
-    
+
                 startConnectablesAfterInitialization.clear();
-    
+
                 int startedTransmitting = 0;
                 for (final RemoteGroupPort remoteGroupPort : startRemoteGroupPortsAfterInitialization) {
                     try {
@@ -620,7 +623,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
                         LOG.error("Unable to start transmitting with {} due to {}", new Object[]{remoteGroupPort, t});
                     }
                 }
-    
+
                 LOG.info("Started {} Remote Group Ports transmitting", startedTransmitting);
                 startRemoteGroupPortsAfterInitialization.clear();
             } else {
@@ -635,7 +638,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
                         LOG.error("Unable to start {} due to {}", new Object[]{connectable, t});
                     }
                 }
-                
+
                 startConnectablesAfterInitialization.clear();
                 startRemoteGroupPortsAfterInitialization.clear();
             }
@@ -720,9 +723,9 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     /**
      * Creates a new Label
      *
-     * @param id
-     * @param text
-     * @return
+     * @param id identifier
+     * @param text label text
+     * @return new label
      * @throws NullPointerException if either argument is null
      */
     public Label createLabel(final String id, final String text) {
@@ -732,8 +735,8 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     /**
      * Creates a funnel
      *
-     * @param id
-     * @return
+     * @param id funnel id
+     * @return new funnel
      */
     public Funnel createFunnel(final String id) {
         return new StandardFunnel(id.intern(), null, processScheduler);
@@ -742,9 +745,9 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     /**
      * Creates a Port to use as an Input Port for a Process Group
      *
-     * @param id
-     * @param name
-     * @return
+     * @param id port identifier
+     * @param name port name
+     * @return new port
      * @throws NullPointerException if the ID or name is not unique
      * @throws IllegalStateException if an Input Port already exists with the
      * same name or id.
@@ -759,9 +762,9 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     /**
      * Creates a Port to use as an Output Port for a Process Group
      *
-     * @param id
-     * @param name
-     * @return
+     * @param id port id
+     * @param name port name
+     * @return new port
      * @throws NullPointerException if the ID or name is not unique
      * @throws IllegalStateException if an Input Port already exists with the
      * same name or id.
@@ -776,8 +779,8 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     /**
      * Creates a ProcessGroup with the given ID
      *
-     * @param id
-     * @return
+     * @param id group id
+     * @return new group
      * @throws NullPointerException if the argument is null
      */
     public ProcessGroup createProcessGroup(final String id) {
@@ -786,13 +789,13 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
 
     /**
      * <p>
-     * Creates a new ProcessorNode with the given type and identifier and initializes it invoking the
-     * methods annotated with {@link OnAdded}.
+     * Creates a new ProcessorNode with the given type and identifier and
+     * initializes it invoking the methods annotated with {@link OnAdded}.
      * </p>
      *
-     * @param type
-     * @param id
-     * @return
+     * @param type processor type
+     * @param id processor id
+     * @return new processor
      * @throws NullPointerException if either arg is null
      * @throws ProcessorInstantiationException if the processor cannot be
      * instantiated for any reason
@@ -800,17 +803,19 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     public ProcessorNode createProcessor(final String type, String id) throws ProcessorInstantiationException {
         return createProcessor(type, id, true);
     }
-    
+
     /**
      * <p>
-     * Creates a new ProcessorNode with the given type and identifier and optionally initializes it.
+     * Creates a new ProcessorNode with the given type and identifier and
+     * optionally initializes it.
      * </p>
      *
      * @param type the fully qualified Processor class name
      * @param id the unique ID of the Processor
-     * @param firstTimeAdded whether or not this is the first time this Processor is added to the graph. If {@code true},
-     *                       will invoke methods annotated with the {@link OnAdded} annotation.
-     * @return
+     * @param firstTimeAdded whether or not this is the first time this
+     * Processor is added to the graph. If {@code true}, will invoke methods
+     * annotated with the {@link OnAdded} annotation.
+     * @return new processor node
      * @throws NullPointerException if either arg is null
      * @throws ProcessorInstantiationException if the processor cannot be
      * instantiated for any reason
@@ -825,7 +830,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
         final LogRepository logRepository = LogRepositoryFactory.getRepository(id);
         logRepository.addObserver(StandardProcessorNode.BULLETIN_OBSERVER_ID, LogLevel.WARN, new ProcessorLogObserver(getBulletinRepository(), procNode));
 
-        if ( firstTimeAdded ) {
+        if (firstTimeAdded) {
             try (final NarCloseable x = NarCloseable.withNarLoader()) {
                 ReflectionUtils.invokeMethodsWithAnnotation(OnAdded.class, org.apache.nifi.processor.annotation.OnAdded.class, processor);
             } catch (final Exception e) {
@@ -886,9 +891,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     }
 
     /**
-     * Gets the BulletinRepository for storing and retrieving Bulletins.
-     *
-     * @return
+     * @return the BulletinRepository for storing and retrieving Bulletins
      */
     public BulletinRepository getBulletinRepository() {
         return bulletinRepository;
@@ -902,9 +905,9 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
      * Creates a Port to use as an Input Port for the root Process Group, which
      * is used for Site-to-Site communications
      *
-     * @param id
-     * @param name
-     * @return
+     * @param id port id
+     * @param name port name
+     * @return new port
      * @throws NullPointerException if the ID or name is not unique
      * @throws IllegalStateException if an Input Port already exists with the
      * same name or id.
@@ -913,7 +916,8 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
         id = requireNonNull(id).intern();
         name = requireNonNull(name).intern();
         verifyPortIdDoesNotExist(id);
-        return new StandardRootGroupPort(id, name, null, TransferDirection.RECEIVE, ConnectableType.INPUT_PORT, userService, getBulletinRepository(), processScheduler, Boolean.TRUE.equals(isSiteToSiteSecure));
+        return new StandardRootGroupPort(id, name, null, TransferDirection.RECEIVE, ConnectableType.INPUT_PORT,
+                userService, getBulletinRepository(), processScheduler, Boolean.TRUE.equals(isSiteToSiteSecure));
     }
 
     /**
@@ -921,9 +925,9 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
      * is used for Site-to-Site communications and will queue flow files waiting
      * to be delivered to remote instances
      *
-     * @param id
-     * @param name
-     * @return
+     * @param id port id
+     * @param name port name
+     * @return new port
      * @throws NullPointerException if the ID or name is not unique
      * @throws IllegalStateException if an Input Port already exists with the
      * same name or id.
@@ -932,17 +936,17 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
         id = requireNonNull(id).intern();
         name = requireNonNull(name).intern();
         verifyPortIdDoesNotExist(id);
-        return new StandardRootGroupPort(id, name, null, TransferDirection.SEND, ConnectableType.OUTPUT_PORT, userService, getBulletinRepository(), processScheduler, Boolean.TRUE.equals(isSiteToSiteSecure));
+        return new StandardRootGroupPort(id, name, null, TransferDirection.SEND, ConnectableType.OUTPUT_PORT,
+                userService, getBulletinRepository(), processScheduler, Boolean.TRUE.equals(isSiteToSiteSecure));
     }
 
     /**
      * Creates a new Remote Process Group with the given ID that points to the
      * given URI
      *
-     * @param id
-     * @param uri
-     * @return
-     *
+     * @param id group id
+     * @param uri group uri
+     * @return new group
      * @throws NullPointerException if either argument is null
      * @throws IllegalArgumentException if <code>uri</code> is not a valid URI.
      */
@@ -954,8 +958,8 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
      * Verifies that no output port exists with the given id or name. If this
      * does not hold true, throws an IllegalStateException
      *
-     * @param id
-     * @throws IllegalStateException
+     * @param id port identifier
+     * @throws IllegalStateException port already exists
      */
     private void verifyPortIdDoesNotExist(final String id) {
         Port port = rootGroup.findOutputPort(id);
@@ -985,7 +989,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
      * Sets the name for the Root Group, which also changes the name for the
      * controller.
      *
-     * @param name
+     * @param name of root group
      */
     public void setName(final String name) {
         readLock.lock();
@@ -997,10 +1001,8 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     }
 
     /**
-     * Gets the comments of this controller, which is also the comment of the
-     * Root Group.
-     *
-     * @return
+     * @return the comments of this controller, which is also the comment of the
+     * Root Group
      */
     public String getComments() {
         readLock.lock();
@@ -1012,10 +1014,10 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     }
 
     /**
-     * Sets the comment for the Root Group, which also changes the comment for
-     * the controller.
+     * Sets the comments
      *
-     * @param comments
+     * @param comments for the Root Group, which also changes the comment for
+     * the controller
      */
     public void setComments(final String comments) {
         readLock.lock();
@@ -1075,23 +1077,23 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
 
             // Trigger any processors' methods marked with @OnShutdown to be called
             rootGroup.shutdown();
-            
+
             // invoke any methods annotated with @OnShutdown on Controller Services
-            for ( final ControllerServiceNode serviceNode : getAllControllerServices() ) {
+            for (final ControllerServiceNode serviceNode : getAllControllerServices()) {
                 try (final NarCloseable narCloseable = NarCloseable.withNarLoader()) {
                     final ConfigurationContext configContext = new StandardConfigurationContext(serviceNode, controllerServiceProvider);
                     ReflectionUtils.quietlyInvokeMethodsWithAnnotation(OnShutdown.class, serviceNode.getControllerServiceImplementation(), configContext);
                 }
             }
-            
+
             // invoke any methods annotated with @OnShutdown on Reporting Tasks
-            for ( final ReportingTaskNode taskNode : getAllReportingTasks() ) {
+            for (final ReportingTaskNode taskNode : getAllReportingTasks()) {
                 final ConfigurationContext configContext = taskNode.getConfigurationContext();
                 try (final NarCloseable narCloseable = NarCloseable.withNarLoader()) {
                     ReflectionUtils.quietlyInvokeMethodsWithAnnotation(OnShutdown.class, taskNode.getReportingTask(), configContext);
                 }
             }
-            
+
             try {
                 this.timerDrivenEngineRef.get().awaitTermination(gracefulShutdownSeconds / 2, TimeUnit.SECONDS);
                 this.eventDrivenEngineRef.get().awaitTermination(gracefulShutdownSeconds / 2, TimeUnit.SECONDS);
@@ -1108,7 +1110,8 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
             if (this.timerDrivenEngineRef.get().isTerminated() && eventDrivenEngineRef.get().isTerminated()) {
                 LOG.info("Controller has been terminated successfully.");
             } else {
-                LOG.warn("Controller hasn't terminated properly.  There exists an uninterruptable thread that will take an indeterminate amount of time to stop.  Might need to kill the program manually.");
+                LOG.warn("Controller hasn't terminated properly.  There exists an uninterruptable thread that "
+                        + "will take an indeterminate amount of time to stop.  Might need to kill the program manually.");
             }
 
             if (externalSiteListener != null) {
@@ -1118,24 +1121,24 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
             if (flowFileSwapManager != null) {
                 flowFileSwapManager.shutdown();
             }
-            
-            if ( processScheduler != null ) {
-            	processScheduler.shutdown();
+
+            if (processScheduler != null) {
+                processScheduler.shutdown();
             }
-            
-            if ( contentRepository != null ) {
+
+            if (contentRepository != null) {
                 contentRepository.shutdown();
             }
-            
-            if ( provenanceEventRepository != null ) {
-            	try {
-            		provenanceEventRepository.close();
-            	} catch (final IOException ioe) {
-            		LOG.warn("There was a problem shutting down the Provenance Repository: " + ioe.toString());
-            		if ( LOG.isDebugEnabled() ) {
-            			LOG.warn("", ioe);
-            		}
-            	}
+
+            if (provenanceEventRepository != null) {
+                try {
+                    provenanceEventRepository.close();
+                } catch (final IOException ioe) {
+                    LOG.warn("There was a problem shutting down the Provenance Repository: " + ioe.toString());
+                    if (LOG.isDebugEnabled()) {
+                        LOG.warn("", ioe);
+                    }
+                }
             }
         } finally {
             writeLock.unlock();
@@ -1145,8 +1148,8 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     /**
      * Serializes the current state of the controller to the given OutputStream
      *
-     * @param serializer
-     * @param os
+     * @param serializer serializer
+     * @param os stream
      * @throws FlowSerializationException if serialization of the flow fails for
      * any reason
      */
@@ -1165,7 +1168,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
      * For more details, see
      * {@link FlowSynchronizer#sync(FlowController, DataFlow)}.
      *
-     * @param synchronizer
+     * @param synchronizer synchronizer
      * @param dataFlow the flow to load the controller with. If the flow is null
      * or zero length, then the controller must not have a flow or else an
      * UninheritableFlowException will be thrown.
@@ -1294,8 +1297,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
      * in DTO that is <code>null</code> (with the exception of the required ID)
      * will be ignored.
      *
-     * @param dto
-     * @return a fully-populated DTO representing the newly updated ProcessGroup
+     * @param dto group
      * @throws ProcessorInstantiationException
      *
      * @throws IllegalStateException if no process group can be found with the
@@ -1331,7 +1333,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
      * part of the current flow. This is going create a template based on a
      * snippet of this flow.
      *
-     * @param dto
+     * @param dto template
      * @return a copy of the given DTO
      * @throws IOException if an I/O error occurs when persisting the Template
      * @throws NullPointerException if the DTO is null
@@ -1346,7 +1348,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     /**
      * Removes all templates from this controller
      *
-     * @throws IOException
+     * @throws IOException ioe
      */
     public void clearTemplates() throws IOException {
         templateManager.clear();
@@ -1356,20 +1358,18 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
      * Imports the specified template into this controller. The contents of this
      * template may have come from another NiFi instance.
      *
-     * @param dto
-     * @return
-     * @throws IOException
+     * @param dto dto
+     * @return template
+     * @throws IOException ioe
      */
     public Template importTemplate(final TemplateDTO dto) throws IOException {
         return templateManager.importTemplate(dto);
     }
 
     /**
-     * Returns the template with the given ID, or <code>null</code> if no
-     * template exists with the given ID.
-     *
-     * @param id
-     * @return
+     * @param id identifier
+     * @return the template with the given ID, or <code>null</code> if no
+     * template exists with the given ID
      */
     public Template getTemplate(final String id) {
         return templateManager.getTemplate(id);
@@ -1380,9 +1380,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     }
 
     /**
-     * Returns all templates that this controller knows about.
-     *
-     * @return
+     * @return all templates that this controller knows about
      */
     public Collection<Template> getTemplates() {
         return templateManager.getTemplates();
@@ -1411,8 +1409,8 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
      * Creates an instance of the given snippet and adds the components to the
      * given group
      *
-     * @param group
-     * @param dto
+     * @param group group
+     * @param dto dto
      *
      * @throws NullPointerException if either argument is null
      * @throws IllegalStateException if the snippet is not valid because a
@@ -1432,27 +1430,27 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
             //
             // Instantiate Controller Services
             //
-            for ( final ControllerServiceDTO controllerServiceDTO : dto.getControllerServices() ) {
+            for (final ControllerServiceDTO controllerServiceDTO : dto.getControllerServices()) {
                 final ControllerServiceNode serviceNode = createControllerService(controllerServiceDTO.getType(), controllerServiceDTO.getId(), true);
-                
+
                 serviceNode.setAnnotationData(controllerServiceDTO.getAnnotationData());
                 serviceNode.setComments(controllerServiceDTO.getComments());
                 serviceNode.setName(controllerServiceDTO.getName());
             }
-            
+
             // configure controller services. We do this after creating all of them in case 1 service
             // references another service.
-            for ( final ControllerServiceDTO controllerServiceDTO : dto.getControllerServices() ) {
+            for (final ControllerServiceDTO controllerServiceDTO : dto.getControllerServices()) {
                 final String serviceId = controllerServiceDTO.getId();
                 final ControllerServiceNode serviceNode = getControllerServiceNode(serviceId);
-                
-                for ( final Map.Entry<String, String> entry : controllerServiceDTO.getProperties().entrySet() ) {
-                    if ( entry.getValue() != null ) {
+
+                for (final Map.Entry<String, String> entry : controllerServiceDTO.getProperties().entrySet()) {
+                    if (entry.getValue() != null) {
                         serviceNode.setProperty(entry.getKey(), entry.getValue());
                     }
                 }
             }
-            
+
             //
             // Instantiate the labels
             //
@@ -1467,7 +1465,6 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
                 group.addLabel(label);
             }
 
-            // 
             // Instantiate the funnels
             for (final FunnelDTO funnelDTO : dto.getFunnels()) {
                 final Funnel funnel = createFunnel(funnelDTO.getId());
@@ -1604,7 +1601,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
                 group.addRemoteProcessGroup(remoteGroup);
             }
 
-            // 
+            //
             // Instantiate ProcessGroups
             //
             for (final ProcessGroupDTO groupDTO : dto.getProcessGroups()) {
@@ -1640,12 +1637,12 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
                 final Connectable source;
                 final Connectable destination;
 
-                // locate the source and destination connectable. if this is a remote port 
-                // we need to locate the remote process groups. otherwise we need to 
+                // locate the source and destination connectable. if this is a remote port
+                // we need to locate the remote process groups. otherwise we need to
                 // find the connectable given its parent group.
                 // NOTE: (getConnectable returns ANY connectable, when the parent is
-                // not this group only input ports or output ports should be returned. if something 
-                // other than a port is returned, an exception will be thrown when adding the 
+                // not this group only input ports or output ports should be returned. if something
+                // other than a port is returned, an exception will be thrown when adding the
                 // connection below.)
                 // see if the source connectable is a remote port
                 if (ConnectableType.REMOTE_OUTPUT_PORT.name().equals(sourceDTO.getType())) {
@@ -1711,8 +1708,8 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     /**
      * Converts a set of ports into a set of remote process group ports.
      *
-     * @param ports
-     * @return
+     * @param ports ports
+     * @return group descriptors
      */
     private Set<RemoteProcessGroupPortDescriptor> convertRemotePort(final Set<RemoteProcessGroupPortDTO> ports) {
         Set<RemoteProcessGroupPortDescriptor> remotePorts = null;
@@ -1738,8 +1735,8 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
      * Returns the parent of the specified Connectable. This only considers this
      * group and any direct child sub groups.
      *
-     * @param parentGroupId
-     * @return
+     * @param parentGroupId group id
+     * @return parent group
      */
     private ProcessGroup getConnectableParent(final ProcessGroup group, final String parentGroupId) {
         if (areGroupsSame(group.getIdentifier(), parentGroupId)) {
@@ -1770,8 +1767,8 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
      * {@link ProcessorInstantiationException} will be thrown.
      * </p>
      *
-     * @param group
-     * @param templateContents
+     * @param group group
+     * @param templateContents contents
      */
     private void validateSnippetContents(final ProcessGroup group, final FlowSnippetDTO templateContents) {
         // validate the names of Input Ports
@@ -1816,7 +1813,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
                 throw new IllegalStateException("Invalid Processor Type: " + proc.getType());
             }
         }
-        
+
         final Set<ControllerServiceDTO> controllerServices = templateContents.getControllerServices();
         if (controllerServices != null) {
             for (final ControllerServiceDTO service : controllerServices) {
@@ -1841,8 +1838,8 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     /**
      * Recursively finds all ProcessorDTO's
      *
-     * @param group
-     * @return
+     * @param group group
+     * @return processor dto set
      */
     private Set<ProcessorDTO> findAllProcessors(final ProcessGroupDTO group) {
         final Set<ProcessorDTO> procs = new HashSet<>();
@@ -1859,8 +1856,8 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     /**
      * Recursively finds all ConnectionDTO's
      *
-     * @param group
-     * @return
+     * @param group group
+     * @return connection dtos
      */
     private Set<ConnectionDTO> findAllConnections(final ProcessGroupDTO group) {
         final Set<ConnectionDTO> conns = new HashSet<>();
@@ -1879,11 +1876,11 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     //
     /**
      * Indicates whether or not the two ID's point to the same ProcessGroup. If
-     * either id is null, will return <code>false</code.
+     * either id is null, will return <code>false</code>.
      *
-     * @param id1
-     * @param id2
-     * @return
+     * @param id1 group id
+     * @param id2 other group id
+     * @return true if same
      */
     public boolean areGroupsSame(final String id1, final String id2) {
         if (id1 == null || id2 == null) {
@@ -1999,7 +1996,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     /**
      * Returns the ProcessGroup with the given ID
      *
-     * @param id
+     * @param id group
      * @return the process group or null if not group is found
      */
     private ProcessGroup lookupGroup(final String id) {
@@ -2013,7 +2010,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     /**
      * Returns the ProcessGroup with the given ID
      *
-     * @param id
+     * @param id group id
      * @return the process group or null if not group is found
      */
     public ProcessGroup getGroup(final String id) {
@@ -2083,7 +2080,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
             bytesSent += procStat.getBytesSent();
         }
 
-        // set status for local child groups     
+        // set status for local child groups
         final Collection<ProcessGroupStatus> localChildGroupStatusCollection = new ArrayList<>();
         status.setProcessGroupStatus(localChildGroupStatusCollection);
         for (final ProcessGroup childGroup : group.getProcessGroups()) {
@@ -2441,8 +2438,8 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
         }
 
         // determine the run status and get any validation errors... must check
-        // is valid when not disabled since a processors validity could change due 
-        // to environmental conditions (property configured with a file path and 
+        // is valid when not disabled since a processors validity could change due
+        // to environmental conditions (property configured with a file path and
         // the file being externally removed)
         if (ScheduledState.DISABLED.equals(procNode.getScheduledState())) {
             status.setRunStatus(RunStatus.Disabled);
@@ -2548,17 +2545,17 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     public ReportingTaskNode createReportingTask(final String type) throws ReportingTaskInstantiationException {
         return createReportingTask(type, true);
     }
-    
+
     public ReportingTaskNode createReportingTask(final String type, final boolean firstTimeAdded) throws ReportingTaskInstantiationException {
-    	return createReportingTask(type, UUID.randomUUID().toString(), firstTimeAdded);
+        return createReportingTask(type, UUID.randomUUID().toString(), firstTimeAdded);
     }
-    
+
     @Override
     public ReportingTaskNode createReportingTask(final String type, final String id, final boolean firstTimeAdded) throws ReportingTaskInstantiationException {
         if (type == null || id == null) {
             throw new NullPointerException();
         }
-        
+
         ReportingTask task = null;
         final ClassLoader ctxClassLoader = Thread.currentThread().getContextClassLoader();
         try {
@@ -2585,8 +2582,8 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
         final ValidationContextFactory validationContextFactory = new StandardValidationContextFactory(controllerServiceProvider);
         final ReportingTaskNode taskNode = new StandardReportingTaskNode(task, id, this, processScheduler, validationContextFactory);
         taskNode.setName(task.getClass().getSimpleName());
-        
-        if ( firstTimeAdded ) {
+
+        if (firstTimeAdded) {
             final ComponentLog componentLog = new SimpleProcessLogger(id, taskNode.getReportingTask());
             final ReportingInitializationContext config = new StandardReportingInitializationContext(id, taskNode.getName(),
                     SchedulingStrategy.TIMER_DRIVEN, "1 min", componentLog, this);
@@ -2596,14 +2593,14 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
             } catch (final InitializationException ie) {
                 throw new ReportingTaskInstantiationException("Failed to initialize reporting task of type " + type, ie);
             }
-                    
+
             try (final NarCloseable x = NarCloseable.withNarLoader()) {
                 ReflectionUtils.invokeMethodsWithAnnotation(OnAdded.class, task);
             } catch (final Exception e) {
                 throw new ComponentLifeCycleException("Failed to invoke On-Added Lifecycle methods of " + task, e);
             }
         }
-        
+
         reportingTasks.put(id, taskNode);
         return taskNode;
     }
@@ -2620,10 +2617,9 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
         }
 
         reportingTaskNode.verifyCanStart();
-       	processScheduler.schedule(reportingTaskNode);
+        processScheduler.schedule(reportingTaskNode);
     }
 
-    
     @Override
     public void stopReportingTask(final ReportingTaskNode reportingTaskNode) {
         if (isTerminated()) {
@@ -2637,32 +2633,32 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     @Override
     public void removeReportingTask(final ReportingTaskNode reportingTaskNode) {
         final ReportingTaskNode existing = reportingTasks.get(reportingTaskNode.getIdentifier());
-        if ( existing == null || existing != reportingTaskNode ) {
+        if (existing == null || existing != reportingTaskNode) {
             throw new IllegalStateException("Reporting Task " + reportingTaskNode + " does not exist in this Flow");
         }
-        
+
         reportingTaskNode.verifyCanDelete();
-        
+
         try (final NarCloseable x = NarCloseable.withNarLoader()) {
             ReflectionUtils.quietlyInvokeMethodsWithAnnotation(OnRemoved.class, reportingTaskNode.getReportingTask(), reportingTaskNode.getConfigurationContext());
         }
-        
-        for ( final Map.Entry<PropertyDescriptor, String> entry : reportingTaskNode.getProperties().entrySet() ) {
+
+        for (final Map.Entry<PropertyDescriptor, String> entry : reportingTaskNode.getProperties().entrySet()) {
             final PropertyDescriptor descriptor = entry.getKey();
-            if (descriptor.getControllerServiceDefinition() != null ) {
+            if (descriptor.getControllerServiceDefinition() != null) {
                 final String value = entry.getValue() == null ? descriptor.getDefaultValue() : entry.getValue();
-                if ( value != null ) {
+                if (value != null) {
                     final ControllerServiceNode serviceNode = controllerServiceProvider.getControllerServiceNode(value);
-                    if ( serviceNode != null ) {
+                    if (serviceNode != null) {
                         serviceNode.removeReference(reportingTaskNode);
                     }
                 }
             }
         }
-        
+
         reportingTasks.remove(reportingTaskNode.getIdentifier());
     }
-    
+
     @Override
     public Set<ReportingTaskNode> getAllReportingTasks() {
         return new HashSet<>(reportingTasks.values());
@@ -2672,60 +2668,60 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     public ControllerServiceNode createControllerService(final String type, final String id, final boolean firstTimeAdded) {
         return controllerServiceProvider.createControllerService(type, id, firstTimeAdded);
     }
-    
+
     @Override
     public void enableReportingTask(final ReportingTaskNode reportingTaskNode) {
         reportingTaskNode.verifyCanEnable();
         processScheduler.enableReportingTask(reportingTaskNode);
     }
-    
+
     @Override
     public void disableReportingTask(final ReportingTaskNode reportingTaskNode) {
         reportingTaskNode.verifyCanDisable();
         processScheduler.disableReportingTask(reportingTaskNode);
     }
-    
+
     @Override
     public void disableReferencingServices(final ControllerServiceNode serviceNode) {
         controllerServiceProvider.disableReferencingServices(serviceNode);
     }
-    
+
     @Override
     public void enableReferencingServices(final ControllerServiceNode serviceNode) {
         controllerServiceProvider.enableReferencingServices(serviceNode);
     }
-    
+
     @Override
     public void scheduleReferencingComponents(final ControllerServiceNode serviceNode) {
         controllerServiceProvider.scheduleReferencingComponents(serviceNode);
     }
-    
+
     @Override
     public void unscheduleReferencingComponents(final ControllerServiceNode serviceNode) {
         controllerServiceProvider.unscheduleReferencingComponents(serviceNode);
     }
-    
+
     @Override
     public void enableControllerService(final ControllerServiceNode serviceNode) {
         controllerServiceProvider.enableControllerService(serviceNode);
     }
-    
+
     @Override
     public void enableControllerServices(final Collection<ControllerServiceNode> serviceNodes) {
         controllerServiceProvider.enableControllerServices(serviceNodes);
     }
-    
+
     @Override
     public void disableControllerService(final ControllerServiceNode serviceNode) {
         serviceNode.verifyCanDisable();
         controllerServiceProvider.disableControllerService(serviceNode);
     }
-    
+
     @Override
     public void verifyCanEnableReferencingServices(final ControllerServiceNode serviceNode) {
         controllerServiceProvider.verifyCanEnableReferencingServices(serviceNode);
     }
-    
+
     @Override
     public void verifyCanScheduleReferencingComponents(final ControllerServiceNode serviceNode) {
         controllerServiceProvider.verifyCanScheduleReferencingComponents(serviceNode);
@@ -2735,12 +2731,12 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     public void verifyCanDisableReferencingServices(final ControllerServiceNode serviceNode) {
         controllerServiceProvider.verifyCanDisableReferencingServices(serviceNode);
     }
-    
+
     @Override
     public void verifyCanStopReferencingComponents(final ControllerServiceNode serviceNode) {
         controllerServiceProvider.verifyCanStopReferencingComponents(serviceNode);
     }
-    
+
     @Override
     public ControllerService getControllerService(final String serviceIdentifier) {
         return controllerServiceProvider.getControllerService(serviceIdentifier);
@@ -2765,21 +2761,22 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     public boolean isControllerServiceEnabling(final String serviceIdentifier) {
         return controllerServiceProvider.isControllerServiceEnabling(serviceIdentifier);
     }
-    
+
     @Override
     public String getControllerServiceName(final String serviceIdentifier) {
-    	return controllerServiceProvider.getControllerServiceName(serviceIdentifier);
+        return controllerServiceProvider.getControllerServiceName(serviceIdentifier);
     }
 
+    @Override
     public void removeControllerService(final ControllerServiceNode serviceNode) {
         controllerServiceProvider.removeControllerService(serviceNode);
     }
-    
+
     @Override
     public Set<ControllerServiceNode> getAllControllerServices() {
-    	return controllerServiceProvider.getAllControllerServices();
+        return controllerServiceProvider.getAllControllerServices();
     }
-    
+
     //
     // Counters
     //
@@ -2842,7 +2839,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
      * Starts heartbeating to the cluster. May only be called if the instance
      * was constructed for a clustered environment.
      *
-     * @throws IllegalStateException
+     * @throws IllegalStateException if not configured for clustering
      */
     public void startHeartbeating() throws IllegalStateException {
         if (!configuredForClustering) {
@@ -2893,7 +2890,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
      * constructed for a clustered environment. If the controller was not
      * heartbeating, then this method has no effect.
      *
-     * @throws IllegalStateException
+     * @throws IllegalStateException if not clustered
      */
     public void stopHeartbeating() throws IllegalStateException {
 
@@ -2925,9 +2922,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     }
 
     /**
-     * Returns true if the instance is heartbeating; false otherwise.
-     *
-     * @return
+     * @return true if the instance is heartbeating; false otherwise
      */
     public boolean isHeartbeating() {
         readLock.lock();
@@ -2940,9 +2935,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     }
 
     /**
-     * Returns the number of seconds to wait between successive heartbeats.
-     *
-     * @return
+     * @return the number of seconds to wait between successive heartbeats
      */
     public int getHeartbeatDelaySeconds() {
         readLock.lock();
@@ -2996,12 +2989,10 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
     }
 
     /**
-     * Returns the DN of the Cluster Manager that we are currently connected to,
+     * @return the DN of the Cluster Manager that we are currently connected to,
      * if available. This will return null if the instance is not clustered or
      * if the instance is clustered but the NCM's DN is not available - for
-     * instance, if cluster communications are not secure.
-     *
-     * @return
+     * instance, if cluster communications are not secure
      */
     public String getClusterManagerDN() {
         readLock.lock();
@@ -3016,7 +3007,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
      * Sets whether this instance is clustered. Clustered means that a node is
      * either connected or trying to connect to the cluster.
      *
-     * @param clustered
+     * @param clustered true if clustered
      * @param clusterInstanceId if clustered is true, indicates the InstanceID
      * of the Cluster Manager
      */
@@ -3028,7 +3019,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
      * Sets whether this instance is clustered. Clustered means that a node is
      * either connected or trying to connect to the cluster.
      *
-     * @param clustered
+     * @param clustered true if clustered
      * @param clusterInstanceId if clustered is true, indicates the InstanceID
      * of the Cluster Manager
      * @param clusterManagerDn the DN of the NCM
@@ -3288,7 +3279,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
             return "Failed to determine whether or not content was available in Content Repository due to " + ioe.toString();
         }
 
-        // Make sure that the source queue exists 
+        // Make sure that the source queue exists
         if (event.getSourceQueueIdentifier() == null) {
             return "Cannot replay data from Provenance Event because the event does not specify the Source FlowFile Queue";
         }
@@ -3339,7 +3330,7 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
             throw new IllegalArgumentException("Cannot replay data from Provenance Event because the event does not contain the required Content Claim");
         }
 
-        // Make sure that the source queue exists 
+        // Make sure that the source queue exists
         if (event.getSourceQueueIdentifier() == null) {
             throw new IllegalArgumentException("Cannot replay data from Provenance Event because the event does not specify the Source FlowFile Queue");
         }
@@ -3358,7 +3349,8 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
         }
 
         // Create the ContentClaim
-        final ContentClaim claim = contentClaimManager.newContentClaim(event.getPreviousContentClaimContainer(), event.getPreviousContentClaimSection(), event.getPreviousContentClaimIdentifier(), false);
+        final ContentClaim claim = contentClaimManager.newContentClaim(event.getPreviousContentClaimContainer(),
+                event.getPreviousContentClaimSection(), event.getPreviousContentClaimIdentifier(), false);
 
         // Increment Claimant Count, since we will now be referencing the Content Claim
         contentClaimManager.incrementClaimantCount(claim);
@@ -3544,7 +3536,8 @@ public class FlowController implements EventAccess, ControllerServiceProvider, R
                     if (bulletin.getGroupId() == null) {
                         escapedBulletin = BulletinFactory.createBulletin(bulletin.getCategory(), bulletin.getLevel(), escapedBulletinMessage);
                     } else {
-                        escapedBulletin = BulletinFactory.createBulletin(bulletin.getGroupId(), bulletin.getSourceId(), bulletin.getSourceName(), bulletin.getCategory(), bulletin.getLevel(), escapedBulletinMessage);
+                        escapedBulletin = BulletinFactory.createBulletin(bulletin.getGroupId(), bulletin.getSourceId(),
+                                bulletin.getSourceName(), bulletin.getCategory(), bulletin.getLevel(), escapedBulletinMessage);
                     }
                 } else {
                     escapedBulletin = bulletin;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowFromDOMFactory.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowFromDOMFactory.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowFromDOMFactory.java
index 85ad159..144395c 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowFromDOMFactory.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowFromDOMFactory.java
@@ -79,39 +79,39 @@ public class FlowFromDOMFactory {
 
         return styles;
     }
-    
+
     public static ControllerServiceDTO getControllerService(final Element element, final StringEncryptor encryptor) {
-    	final ControllerServiceDTO dto = new ControllerServiceDTO();
-    	
-    	dto.setId(getString(element, "id"));
-    	dto.setName(getString(element, "name"));
-    	dto.setComments(getString(element, "comment"));
-    	dto.setType(getString(element, "class"));
-
-    	final boolean enabled = getBoolean(element, "enabled");
-    	dto.setState(enabled ? ControllerServiceState.ENABLED.name() : ControllerServiceState.DISABLED.name());
-    	
+        final ControllerServiceDTO dto = new ControllerServiceDTO();
+
+        dto.setId(getString(element, "id"));
+        dto.setName(getString(element, "name"));
+        dto.setComments(getString(element, "comment"));
+        dto.setType(getString(element, "class"));
+
+        final boolean enabled = getBoolean(element, "enabled");
+        dto.setState(enabled ? ControllerServiceState.ENABLED.name() : ControllerServiceState.DISABLED.name());
+
         dto.setProperties(getProperties(element, encryptor));
         dto.setAnnotationData(getString(element, "annotationData"));
 
         return dto;
     }
-    
+
     public static ReportingTaskDTO getReportingTask(final Element element, final StringEncryptor encryptor) {
-    	final ReportingTaskDTO dto = new ReportingTaskDTO();
-    	
-    	dto.setId(getString(element, "id"));
-    	dto.setName(getString(element, "name"));
-    	dto.setComments(getString(element, "comment"));
-    	dto.setType(getString(element, "class"));
-    	dto.setSchedulingPeriod(getString(element, "schedulingPeriod"));
-    	dto.setState(getString(element, "scheduledState"));
-    	dto.setSchedulingStrategy(getString(element, "schedulingStrategy"));
-    	
-    	dto.setProperties(getProperties(element, encryptor));
-    	dto.setAnnotationData(getString(element, "annotationData"));
-
-    	return dto;
+        final ReportingTaskDTO dto = new ReportingTaskDTO();
+
+        dto.setId(getString(element, "id"));
+        dto.setName(getString(element, "name"));
+        dto.setComments(getString(element, "comment"));
+        dto.setType(getString(element, "class"));
+        dto.setSchedulingPeriod(getString(element, "schedulingPeriod"));
+        dto.setState(getString(element, "scheduledState"));
+        dto.setSchedulingStrategy(getString(element, "schedulingStrategy"));
+
+        dto.setProperties(getProperties(element, encryptor));
+        dto.setAnnotationData(getString(element, "annotationData"));
+
+        return dto;
     }
 
     public static ProcessGroupDTO getProcessGroup(final String parentId, final Element element, final StringEncryptor encryptor) {
@@ -383,7 +383,7 @@ public class FlowFromDOMFactory {
     }
 
     private static LinkedHashMap<String, String> getProperties(final Element element, final StringEncryptor encryptor) {
-    	final LinkedHashMap<String, String> properties = new LinkedHashMap<>();
+        final LinkedHashMap<String, String> properties = new LinkedHashMap<>();
         final List<Element> propertyNodeList = getChildrenByTagName(element, "property");
         for (final Element propertyElement : propertyNodeList) {
             final String name = getString(propertyElement, "name");
@@ -392,7 +392,7 @@ public class FlowFromDOMFactory {
         }
         return properties;
     }
-    
+
     private static String getString(final Element element, final String childElementName) {
         final List<Element> nodeList = getChildrenByTagName(element, childElementName);
         if (nodeList == null || nodeList.isEmpty()) {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowUnmarshaller.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowUnmarshaller.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowUnmarshaller.java
index 42d7f1c..7cc3039 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowUnmarshaller.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowUnmarshaller.java
@@ -42,13 +42,13 @@ public class FlowUnmarshaller {
      * Flow Configuration schema and returns a FlowSnippetDTO representing the
      * flow
      *
-     * @param flowContents
-     * @param encryptor
-     * @return
+     * @param flowContents contents
+     * @param encryptor encryptor
+     * @return snippet dto
      * @throws NullPointerException if <code>flowContents</code> is null
-     * @throws IOException
-     * @throws SAXException
-     * @throws ParserConfigurationException
+     * @throws IOException ioe
+     * @throws SAXException sax
+     * @throws ParserConfigurationException pe
      */
     public static FlowSnippetDTO unmarshal(final byte[] flowContents, final StringEncryptor encryptor) throws IOException, SAXException, ParserConfigurationException {
         if (Objects.requireNonNull(flowContents).length == 0) {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowSerializer.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowSerializer.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowSerializer.java
index 7cd9d3b..c6aa395 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowSerializer.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowSerializer.java
@@ -80,17 +80,17 @@ public class StandardFlowSerializer implements FlowSerializer {
             addTextElement(rootNode, "maxTimerDrivenThreadCount", controller.getMaxTimerDrivenThreadCount());
             addTextElement(rootNode, "maxEventDrivenThreadCount", controller.getMaxEventDrivenThreadCount());
             addProcessGroup(rootNode, controller.getGroup(controller.getRootGroupId()), "rootGroup");
-            
+
             final Element controllerServicesNode = doc.createElement("controllerServices");
             rootNode.appendChild(controllerServicesNode);
-            for ( final ControllerServiceNode serviceNode : controller.getAllControllerServices() ) {
-            	addControllerService(controllerServicesNode, serviceNode, encryptor);
+            for (final ControllerServiceNode serviceNode : controller.getAllControllerServices()) {
+                addControllerService(controllerServicesNode, serviceNode, encryptor);
             }
-            
+
             final Element reportingTasksNode = doc.createElement("reportingTasks");
             rootNode.appendChild(reportingTasksNode);
-            for ( final ReportingTaskNode taskNode : controller.getAllReportingTasks() ) {
-            	addReportingTask(reportingTasksNode, taskNode, encryptor);
+            for (final ReportingTaskNode taskNode : controller.getAllReportingTasks()) {
+                addReportingTask(reportingTasksNode, taskNode, encryptor);
             }
 
             final DOMSource domSource = new DOMSource(doc);
@@ -314,15 +314,15 @@ public class StandardFlowSerializer implements FlowSerializer {
         addTextElement(element, "runDurationNanos", processor.getRunDuration(TimeUnit.NANOSECONDS));
 
         addConfiguration(element, processor.getProperties(), processor.getAnnotationData(), encryptor);
-        
+
         for (final Relationship rel : processor.getAutoTerminatedRelationships()) {
             addTextElement(element, "autoTerminatedRelationship", rel.getName());
         }
     }
-    
+
     private static void addConfiguration(final Element element, final Map<PropertyDescriptor, String> properties, final String annotationData, final StringEncryptor encryptor) {
-    	final Document doc = element.getOwnerDocument();
-    	for (final Map.Entry<PropertyDescriptor, String> entry : properties.entrySet()) {
+        final Document doc = element.getOwnerDocument();
+        for (final Map.Entry<PropertyDescriptor, String> entry : properties.entrySet()) {
             final PropertyDescriptor descriptor = entry.getKey();
             String value = entry.getValue();
 
@@ -406,38 +406,37 @@ public class StandardFlowSerializer implements FlowSerializer {
         parentElement.appendChild(element);
     }
 
-    
     public static void addControllerService(final Element element, final ControllerServiceNode serviceNode, final StringEncryptor encryptor) {
-    	final Element serviceElement = element.getOwnerDocument().createElement("controllerService");
-    	addTextElement(serviceElement, "id", serviceNode.getIdentifier());
-    	addTextElement(serviceElement, "name", serviceNode.getName());
-    	addTextElement(serviceElement, "comment", serviceNode.getComments());
-    	addTextElement(serviceElement, "class", serviceNode.getControllerServiceImplementation().getClass().getCanonicalName());
-    	
-    	final ControllerServiceState state = serviceNode.getState();
-    	final boolean enabled = (state == ControllerServiceState.ENABLED || state == ControllerServiceState.ENABLING);
+        final Element serviceElement = element.getOwnerDocument().createElement("controllerService");
+        addTextElement(serviceElement, "id", serviceNode.getIdentifier());
+        addTextElement(serviceElement, "name", serviceNode.getName());
+        addTextElement(serviceElement, "comment", serviceNode.getComments());
+        addTextElement(serviceElement, "class", serviceNode.getControllerServiceImplementation().getClass().getCanonicalName());
+
+        final ControllerServiceState state = serviceNode.getState();
+        final boolean enabled = (state == ControllerServiceState.ENABLED || state == ControllerServiceState.ENABLING);
         addTextElement(serviceElement, "enabled", String.valueOf(enabled));
-        
+
         addConfiguration(serviceElement, serviceNode.getProperties(), serviceNode.getAnnotationData(), encryptor);
-        
-    	element.appendChild(serviceElement);
+
+        element.appendChild(serviceElement);
     }
-    
+
     public static void addReportingTask(final Element element, final ReportingTaskNode taskNode, final StringEncryptor encryptor) {
-    	final Element taskElement = element.getOwnerDocument().createElement("reportingTask");
-    	addTextElement(taskElement, "id", taskNode.getIdentifier());
-    	addTextElement(taskElement, "name", taskNode.getName());
-    	addTextElement(taskElement, "comment", taskNode.getComments());
-    	addTextElement(taskElement, "class", taskNode.getReportingTask().getClass().getCanonicalName());
+        final Element taskElement = element.getOwnerDocument().createElement("reportingTask");
+        addTextElement(taskElement, "id", taskNode.getIdentifier());
+        addTextElement(taskElement, "name", taskNode.getName());
+        addTextElement(taskElement, "comment", taskNode.getComments());
+        addTextElement(taskElement, "class", taskNode.getReportingTask().getClass().getCanonicalName());
         addTextElement(taskElement, "schedulingPeriod", taskNode.getSchedulingPeriod());
         addTextElement(taskElement, "scheduledState", taskNode.getScheduledState().name());
         addTextElement(taskElement, "schedulingStrategy", taskNode.getSchedulingStrategy().name());
-    	
-    	addConfiguration(taskElement, taskNode.getProperties(), taskNode.getAnnotationData(), encryptor);
-    	
-    	element.appendChild(taskElement);
+
+        addConfiguration(taskElement, taskNode.getProperties(), taskNode.getAnnotationData(), encryptor);
+
+        element.appendChild(taskElement);
     }
-    
+
     private static void addTextElement(final Element element, final String name, final long value) {
         addTextElement(element, name, String.valueOf(value));
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowService.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowService.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowService.java
index fcfee83..1511293 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowService.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowService.java
@@ -338,7 +338,7 @@ public class StandardFlowService implements FlowService, ProtocolHandler {
                 case RECONNECTION_REQUEST:
                     // Suspend heartbeats until we've reconnected. Otherwise,
                     // we may send a heartbeat while we are still in the process of
-                    // connecting, which will cause the Cluster Manager to mark us 
+                    // connecting, which will cause the Cluster Manager to mark us
                     // as "Connected," which becomes problematic as the FlowController's lock
                     // may still be held, causing this node to take a long time to respond to requests.
                     controller.suspendHeartbeats();
@@ -389,7 +389,7 @@ public class StandardFlowService implements FlowService, ProtocolHandler {
                 /*
                  * Attempt to connect to the cluster.  If the manager is able to
                  * provide a data flow, then the manager will send a connection
-                 * response.  If the manager was unable to be located, then 
+                 * response.  If the manager was unable to be located, then
                  * the response will be null and we should load the local dataflow
                  * and heartbeat until a manager is located.
                  */
@@ -411,10 +411,10 @@ public class StandardFlowService implements FlowService, ProtocolHandler {
                     controller.setConnected(false);
 
                     /*
-                     * Start heartbeating.  Heartbeats will fail because we can't reach 
-                     * the manager, but when we locate the manager, the node will 
-                     * reconnect and establish a connection to the cluster.  The 
-                     * heartbeat is the trigger that will cause the manager to 
+                     * Start heartbeating.  Heartbeats will fail because we can't reach
+                     * the manager, but when we locate the manager, the node will
+                     * reconnect and establish a connection to the cluster.  The
+                     * heartbeat is the trigger that will cause the manager to
                      * issue a reconnect request.
                      */
                     controller.startHeartbeating();
@@ -515,7 +515,7 @@ public class StandardFlowService implements FlowService, ProtocolHandler {
 
             logger.info("Node reconnected.");
         } catch (final Exception ex) {
-            // disconnect controller 
+            // disconnect controller
             if (controller.isClustered()) {
                 disconnect();
             }
@@ -618,7 +618,6 @@ public class StandardFlowService implements FlowService, ProtocolHandler {
 
             // load the controller tasks
 //            dao.loadReportingTasks(controller);
-
             // initialize the flow
             controller.initializeFlow();
 
@@ -638,11 +637,11 @@ public class StandardFlowService implements FlowService, ProtocolHandler {
 
             // send connection request to cluster manager
             /*
-             * Try to get a current copy of the cluster's dataflow from the manager 
-             * for ten times, sleeping between attempts.  Ten times should be 
+             * Try to get a current copy of the cluster's dataflow from the manager
+             * for ten times, sleeping between attempts.  Ten times should be
              * enough because the manager will register the node as connecting
              * and therefore, no other changes to the cluster flow can occur.
-             * 
+             *
              * However, the manager needs to obtain a current data flow within
              * maxAttempts * tryLaterSeconds or else the node will fail to startup.
              */
@@ -813,7 +812,7 @@ public class StandardFlowService implements FlowService, ProtocolHandler {
                     writeLock.lock();
                     try {
                         dao.save(controller, holder.shouldArchive);
-                        // Nulling it out if it is still set to our current SaveHolder.  Otherwise leave it alone because it means 
+                        // Nulling it out if it is still set to our current SaveHolder.  Otherwise leave it alone because it means
                         // another save is already pending.
                         final boolean noSavePending = StandardFlowService.this.saveHolder.compareAndSet(holder, null);
                         logger.info("Saved flow controller {} // Another save pending = {}", controller, !noSavePending);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowSynchronizer.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowSynchronizer.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowSynchronizer.java
index 201482c..b66bedc 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowSynchronizer.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowSynchronizer.java
@@ -129,7 +129,8 @@ public class StandardFlowSynchronizer implements FlowSynchronizer {
     }
 
     @Override
-    public void sync(final FlowController controller, final DataFlow proposedFlow, final StringEncryptor encryptor) throws FlowSerializationException, UninheritableFlowException, FlowSynchronizationException {
+    public void sync(final FlowController controller, final DataFlow proposedFlow, final StringEncryptor encryptor)
+            throws FlowSerializationException, UninheritableFlowException, FlowSynchronizationException {
         // get the controller's root group
         final ProcessGroup rootGroup = controller.getGroup(controller.getRootGroupId());
 
@@ -173,20 +174,20 @@ public class StandardFlowSynchronizer implements FlowSynchronizer {
 
                     final Element reportingTasksElement = (Element) DomUtils.getChild(rootElement, "reportingTasks");
                     final List<Element> taskElements;
-                    if ( reportingTasksElement == null ) {
+                    if (reportingTasksElement == null) {
                         taskElements = Collections.emptyList();
                     } else {
                         taskElements = DomUtils.getChildElementsByTagName(reportingTasksElement, "reportingTask");
                     }
-                    
+
                     final Element controllerServicesElement = (Element) DomUtils.getChild(rootElement, "controllerServices");
                     final List<Element> controllerServiceElements;
-                    if ( controllerServicesElement == null ) {
+                    if (controllerServicesElement == null) {
                         controllerServiceElements = Collections.emptyList();
                     } else {
                         controllerServiceElements = DomUtils.getChildElementsByTagName(controllerServicesElement, "controllerService");
                     }
-                    
+
                     logger.trace("Parsing process group from DOM");
                     final Element rootGroupElement = (Element) rootElement.getElementsByTagName("rootGroup").item(0);
                     final ProcessGroupDTO rootGroupDto = FlowFromDOMFactory.getProcessGroup(null, rootGroupElement, encryptor);
@@ -230,14 +231,14 @@ public class StandardFlowSynchronizer implements FlowSynchronizer {
         // create document by parsing proposed flow bytes
         logger.trace("Parsing proposed flow bytes as DOM document");
         final Document configuration = parseFlowBytes(proposedFlow.getFlow());
-        
+
         // attempt to sync controller with proposed flow
         try {
             if (configuration != null) {
                 synchronized (configuration) {
                     // get the root element
                     final Element rootElement = (Element) configuration.getElementsByTagName("flowController").item(0);
-    
+
                     // set controller config
                     logger.trace("Updating flow config");
                     final Integer maxThreadCount = getInteger(rootElement, "maxThreadCount");
@@ -248,23 +249,23 @@ public class StandardFlowSynchronizer implements FlowSynchronizer {
                         controller.setMaxTimerDrivenThreadCount(maxThreadCount * 2 / 3);
                         controller.setMaxEventDrivenThreadCount(maxThreadCount / 3);
                     }
-    
+
                     // get the root group XML element
                     final Element rootGroupElement = (Element) rootElement.getElementsByTagName("rootGroup").item(0);
-    
+
                     final Element controllerServicesElement = (Element) DomUtils.getChild(rootElement, "controllerServices");
-    	            if ( controllerServicesElement != null ) {
-    	                final List<Element> serviceElements = DomUtils.getChildElementsByTagName(controllerServicesElement, "controllerService");
-    	                
-    	                if ( !initialized || existingFlowEmpty ) {
-    	                    ControllerServiceLoader.loadControllerServices(serviceElements, controller, encryptor, controller.getBulletinRepository(), autoResumeState);
-    	                } else {
-    	                    for ( final Element serviceElement : serviceElements ) {
-    	                        updateControllerService(controller, serviceElement, encryptor);
-    	                    }
-    	                }
+                    if (controllerServicesElement != null) {
+                        final List<Element> serviceElements = DomUtils.getChildElementsByTagName(controllerServicesElement, "controllerService");
+
+                        if (!initialized || existingFlowEmpty) {
+                            ControllerServiceLoader.loadControllerServices(serviceElements, controller, encryptor, controller.getBulletinRepository(), autoResumeState);
+                        } else {
+                            for (final Element serviceElement : serviceElements) {
+                                updateControllerService(controller, serviceElement, encryptor);
+                            }
+                        }
                     }
-    
+
                     // if this controller isn't initialized or its emtpy, add the root group, otherwise update
                     if (!initialized || existingFlowEmpty) {
                         logger.trace("Adding root process group");
@@ -273,21 +274,21 @@ public class StandardFlowSynchronizer implements FlowSynchronizer {
                         logger.trace("Updating root process group");
                         updateProcessGroup(controller, /* parent group */ null, rootGroupElement, encryptor);
                     }
-    
+
                     final Element reportingTasksElement = (Element) DomUtils.getChild(rootElement, "reportingTasks");
-                    if ( reportingTasksElement != null ) {
-                    	final List<Element> taskElements = DomUtils.getChildElementsByTagName(reportingTasksElement, "reportingTask");
-                    	for ( final Element taskElement : taskElements ) {
-                    		if ( !initialized || existingFlowEmpty ) {
-                    			addReportingTask(controller, taskElement, encryptor);
-                    		} else {
-                    			updateReportingTask(controller, taskElement, encryptor);
-                    		}
-                    	}
+                    if (reportingTasksElement != null) {
+                        final List<Element> taskElements = DomUtils.getChildElementsByTagName(reportingTasksElement, "reportingTask");
+                        for (final Element taskElement : taskElements) {
+                            if (!initialized || existingFlowEmpty) {
+                                addReportingTask(controller, taskElement, encryptor);
+                            } else {
+                                updateReportingTask(controller, taskElement, encryptor);
+                            }
+                        }
                     }
                 }
             }
-    
+
             logger.trace("Synching templates");
             if ((existingTemplates == null || existingTemplates.length == 0) && proposedFlow.getTemplates() != null && proposedFlow.getTemplates().length > 0) {
                 // need to load templates
@@ -370,105 +371,104 @@ public class StandardFlowSynchronizer implements FlowSynchronizer {
 
         return baos.toByteArray();
     }
-    
-    
+
     private void updateControllerService(final FlowController controller, final Element controllerServiceElement, final StringEncryptor encryptor) {
-    	final ControllerServiceDTO dto = FlowFromDOMFactory.getControllerService(controllerServiceElement, encryptor);
-    	
-    	final ControllerServiceState dtoState = ControllerServiceState.valueOf(dto.getState());
+        final ControllerServiceDTO dto = FlowFromDOMFactory.getControllerService(controllerServiceElement, encryptor);
+
+        final ControllerServiceState dtoState = ControllerServiceState.valueOf(dto.getState());
         final boolean dtoEnabled = (dtoState == ControllerServiceState.ENABLED || dtoState == ControllerServiceState.ENABLING);
-        
+
         final ControllerServiceNode serviceNode = controller.getControllerServiceNode(dto.getId());
         final ControllerServiceState serviceState = serviceNode.getState();
         final boolean serviceEnabled = (serviceState == ControllerServiceState.ENABLED || serviceState == ControllerServiceState.ENABLING);
-        
-    	if (dtoEnabled && !serviceEnabled) {
-    		controller.enableControllerService(controller.getControllerServiceNode(dto.getId()));
-    	} else if (!dtoEnabled && serviceEnabled) {
-    		controller.disableControllerService(controller.getControllerServiceNode(dto.getId()));
-    	}
+
+        if (dtoEnabled && !serviceEnabled) {
+            controller.enableControllerService(controller.getControllerServiceNode(dto.getId()));
+        } else if (!dtoEnabled && serviceEnabled) {
+            controller.disableControllerService(controller.getControllerServiceNode(dto.getId()));
+        }
     }
-    
+
     private void addReportingTask(final FlowController controller, final Element reportingTaskElement, final StringEncryptor encryptor) throws ReportingTaskInstantiationException {
-    	final ReportingTaskDTO dto = FlowFromDOMFactory.getReportingTask(reportingTaskElement, encryptor);
-    	
-    	final ReportingTaskNode reportingTask = controller.createReportingTask(dto.getType(), dto.getId(), false);
-    	reportingTask.setName(dto.getName());
-    	reportingTask.setComments(dto.getComments());
-    	reportingTask.setScheduldingPeriod(dto.getSchedulingPeriod());
-    	reportingTask.setSchedulingStrategy(SchedulingStrategy.valueOf(dto.getSchedulingStrategy()));
-    	
-    	reportingTask.setAnnotationData(dto.getAnnotationData());
-    	
+        final ReportingTaskDTO dto = FlowFromDOMFactory.getReportingTask(reportingTaskElement, encryptor);
+
+        final ReportingTaskNode reportingTask = controller.createReportingTask(dto.getType(), dto.getId(), false);
+        reportingTask.setName(dto.getName());
+        reportingTask.setComments(dto.getComments());
+        reportingTask.setScheduldingPeriod(dto.getSchedulingPeriod());
+        reportingTask.setSchedulingStrategy(SchedulingStrategy.valueOf(dto.getSchedulingStrategy()));
+
+        reportingTask.setAnnotationData(dto.getAnnotationData());
+
         for (final Map.Entry<String, String> entry : dto.getProperties().entrySet()) {
             if (entry.getValue() == null) {
-            	reportingTask.removeProperty(entry.getKey());
+                reportingTask.removeProperty(entry.getKey());
             } else {
-            	reportingTask.setProperty(entry.getKey(), entry.getValue());
+                reportingTask.setProperty(entry.getKey(), entry.getValue());
             }
         }
-        
+
         final ComponentLog componentLog = new SimpleProcessLogger(dto.getId(), reportingTask.getReportingTask());
         final ReportingInitializationContext config = new StandardReportingInitializationContext(dto.getId(), dto.getName(),
                 SchedulingStrategy.valueOf(dto.getSchedulingStrategy()), dto.getSchedulingPeriod(), componentLog, controller);
-        
+
         try {
             reportingTask.getReportingTask().initialize(config);
         } catch (final InitializationException ie) {
             throw new ReportingTaskInstantiationException("Failed to initialize reporting task of type " + dto.getType(), ie);
         }
-        
-        if ( autoResumeState ) {
-	        if ( ScheduledState.RUNNING.name().equals(dto.getState()) ) {
-	        	try {
-	        		controller.startReportingTask(reportingTask);
-	        	} catch (final Exception e) {
-	        		logger.error("Failed to start {} due to {}", reportingTask, e);
-	        		if ( logger.isDebugEnabled() ) {
-	        			logger.error("", e);
-	        		}
-	        		controller.getBulletinRepository().addBulletin(BulletinFactory.createBulletin(
-	        				"Reporting Tasks", Severity.ERROR.name(), "Failed to start " + reportingTask + " due to " + e));
-	        	}
-	        } else if ( ScheduledState.DISABLED.name().equals(dto.getState()) ) {
-	        	try {
-	        		controller.disableReportingTask(reportingTask);
-	        	} catch (final Exception e) {
-	        		logger.error("Failed to mark {} as disabled due to {}", reportingTask, e);
-	        		if ( logger.isDebugEnabled() ) {
-	        			logger.error("", e);
-	        		}
-	        		controller.getBulletinRepository().addBulletin(BulletinFactory.createBulletin(
-	        				"Reporting Tasks", Severity.ERROR.name(), "Failed to mark " + reportingTask + " as disabled due to " + e));
-	        	}
-	        }
+
+        if (autoResumeState) {
+            if (ScheduledState.RUNNING.name().equals(dto.getState())) {
+                try {
+                    controller.startReportingTask(reportingTask);
+                } catch (final Exception e) {
+                    logger.error("Failed to start {} due to {}", reportingTask, e);
+                    if (logger.isDebugEnabled()) {
+                        logger.error("", e);
+                    }
+                    controller.getBulletinRepository().addBulletin(BulletinFactory.createBulletin(
+                            "Reporting Tasks", Severity.ERROR.name(), "Failed to start " + reportingTask + " due to " + e));
+                }
+            } else if (ScheduledState.DISABLED.name().equals(dto.getState())) {
+                try {
+                    controller.disableReportingTask(reportingTask);
+                } catch (final Exception e) {
+                    logger.error("Failed to mark {} as disabled due to {}", reportingTask, e);
+                    if (logger.isDebugEnabled()) {
+                        logger.error("", e);
+                    }
+                    controller.getBulletinRepository().addBulletin(BulletinFactory.createBulletin(
+                            "Reporting Tasks", Severity.ERROR.name(), "Failed to mark " + reportingTask + " as disabled due to " + e));
+                }
+            }
         }
     }
 
     private void updateReportingTask(final FlowController controller, final Element reportingTaskElement, final StringEncryptor encryptor) {
-    	final ReportingTaskDTO dto = FlowFromDOMFactory.getReportingTask(reportingTaskElement, encryptor);
-    	final ReportingTaskNode taskNode = controller.getReportingTaskNode(dto.getId());
-    	
+        final ReportingTaskDTO dto = FlowFromDOMFactory.getReportingTask(reportingTaskElement, encryptor);
+        final ReportingTaskNode taskNode = controller.getReportingTaskNode(dto.getId());
+
         if (!taskNode.getScheduledState().name().equals(dto.getState())) {
             try {
                 switch (ScheduledState.valueOf(dto.getState())) {
                     case DISABLED:
-                    	if ( taskNode.isRunning() ) {
-                    		controller.stopReportingTask(taskNode);
-                    	}
-                    	controller.disableReportingTask(taskNode);
+                        if (taskNode.isRunning()) {
+                            controller.stopReportingTask(taskNode);
+                        }
+                        controller.disableReportingTask(taskNode);
                         break;
                     case RUNNING:
-                    	if ( taskNode.getScheduledState() == ScheduledState.DISABLED ) {
-                    		controller.enableReportingTask(taskNode);
-                    	}
-                    	controller.startReportingTask(taskNode);
+                        if (taskNode.getScheduledState() == ScheduledState.DISABLED) {
+                            controller.enableReportingTask(taskNode);
+                        }
+                        controller.startReportingTask(taskNode);
                         break;
                     case STOPPED:
                         if (taskNode.getScheduledState() == ScheduledState.DISABLED) {
-                        	controller.enableReportingTask(taskNode);
+                            controller.enableReportingTask(taskNode);
                         } else if (taskNode.getScheduledState() == ScheduledState.RUNNING) {
-                        	controller.stopReportingTask(taskNode);
+                            controller.stopReportingTask(taskNode);
                         }
                         break;
                 }
@@ -486,9 +486,9 @@ public class StandardFlowSynchronizer implements FlowSynchronizer {
             }
         }
     }
-    
-    
-    private ProcessGroup updateProcessGroup(final FlowController controller, final ProcessGroup parentGroup, final Element processGroupElement, final StringEncryptor encryptor) throws ProcessorInstantiationException {
+
+    private ProcessGroup updateProcessGroup(final FlowController controller, final ProcessGroup parentGroup, final Element processGroupElement, final StringEncryptor encryptor)
+            throws ProcessorInstantiationException {
 
         // get the parent group ID
         final String parentId = (parentGroup == null) ? null : parentGroup.getIdentifier();
@@ -698,7 +698,8 @@ public class StandardFlowSynchronizer implements FlowSynchronizer {
         return new Position(dto.getX(), dto.getY());
     }
 
-    private void updateProcessor(final ProcessorNode procNode, final ProcessorDTO processorDTO, final ProcessGroup processGroup, final FlowController controller) throws ProcessorInstantiationException {
+    private void updateProcessor(final ProcessorNode procNode, final ProcessorDTO processorDTO, final ProcessGroup processGroup, final FlowController controller)
+            throws ProcessorInstantiationException {
         final ProcessorConfigDTO config = processorDTO.getConfig();
         procNode.setPosition(toPosition(processorDTO.getPosition()));
         procNode.setName(processorDTO.getName());
@@ -747,7 +748,8 @@ public class StandardFlowSynchronizer implements FlowSynchronizer {
         }
     }
 
-    private ProcessGroup addProcessGroup(final FlowController controller, final ProcessGroup parentGroup, final Element processGroupElement, final StringEncryptor encryptor) throws ProcessorInstantiationException {
+    private ProcessGroup addProcessGroup(final FlowController controller, final ProcessGroup parentGroup, final Element processGroupElement, final StringEncryptor encryptor)
+            throws ProcessorInstantiationException {
         // get the parent group ID
         final String parentId = (parentGroup == null) ? null : parentGroup.getIdentifier();
 
@@ -866,7 +868,7 @@ public class StandardFlowSynchronizer implements FlowSynchronizer {
             final FunnelDTO funnelDTO = FlowFromDOMFactory.getFunnel(funnelElement);
             final Funnel funnel = controller.createFunnel(funnelDTO.getId());
             funnel.setPosition(toPosition(funnelDTO.getPosition()));
-            
+
             // Since this is called during startup, we want to add the funnel without enabling it
             // and then tell the controller to enable it. This way, if the controller is not fully
             // initialized, the starting of the funnel is delayed until the controller is ready.
@@ -1031,7 +1033,7 @@ public class StandardFlowSynchronizer implements FlowSynchronizer {
      * Returns true if the given controller can inherit the proposed flow
      * without orphaning flow files.
      *
-     * @param existingFlow
+     * @param existingFlow flow
      * @param controller the running controller
      * @param proposedFlow the flow to inherit
      *
@@ -1081,7 +1083,7 @@ public class StandardFlowSynchronizer implements FlowSynchronizer {
      * Returns true if the given controller can inherit the proposed flow
      * without orphaning flow files.
      *
-     * @param existingFlow
+     * @param existingFlow flow
      * @param proposedFlow the flow to inherit
      *
      * @return null if the controller can inherit the specified flow, an


[10/11] incubator-nifi git commit: NIFI-271 checkpoint

Posted by jo...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ConnectionResponse.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ConnectionResponse.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ConnectionResponse.java
index 7a5ff2b..4e06926 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ConnectionResponse.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ConnectionResponse.java
@@ -21,13 +21,12 @@ import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
 import org.apache.nifi.cluster.protocol.jaxb.message.ConnectionResponseAdapter;
 
 /**
- * The cluster manager's response to a node's connection request.  If the manager
- * has a current copy of the data flow, then it is returned with a node identifier
- * to the node.  Otherwise, the manager will provide a "try again in X seconds" 
- * response to the node in hopes that a current data flow will be available upon
- * subsequent requests.
- * 
- * @author unattributed
+ * The cluster manager's response to a node's connection request. If the manager
+ * has a current copy of the data flow, then it is returned with a node
+ * identifier to the node. Otherwise, the manager will provide a "try again in X
+ * seconds" response to the node in hopes that a current data flow will be
+ * available upon subsequent requests.
+ *
  */
 @XmlJavaTypeAdapter(ConnectionResponseAdapter.class)
 public class ConnectionResponse {
@@ -40,14 +39,14 @@ public class ConnectionResponse {
     private final Integer managerRemoteInputPort;
     private final Boolean managerRemoteCommsSecure;
     private final String instanceId;
-    
+
     private volatile String clusterManagerDN;
-    
-    public ConnectionResponse(final NodeIdentifier nodeIdentifier, final StandardDataFlow dataFlow, final boolean primary, 
-        final Integer managerRemoteInputPort, final Boolean managerRemoteCommsSecure, final String instanceId) {
-        if(nodeIdentifier == null) {
+
+    public ConnectionResponse(final NodeIdentifier nodeIdentifier, final StandardDataFlow dataFlow, final boolean primary,
+            final Integer managerRemoteInputPort, final Boolean managerRemoteCommsSecure, final String instanceId) {
+        if (nodeIdentifier == null) {
             throw new IllegalArgumentException("Node identifier may not be empty or null.");
-        } else if(dataFlow == null) {
+        } else if (dataFlow == null) {
             throw new IllegalArgumentException("DataFlow may not be null.");
         }
         this.nodeIdentifier = nodeIdentifier;
@@ -59,9 +58,9 @@ public class ConnectionResponse {
         this.managerRemoteCommsSecure = managerRemoteCommsSecure;
         this.instanceId = instanceId;
     }
-    
+
     public ConnectionResponse(final int tryLaterSeconds) {
-        if(tryLaterSeconds <= 0) {
+        if (tryLaterSeconds <= 0) {
             throw new IllegalArgumentException("Try-Later seconds may not be nonnegative: " + tryLaterSeconds);
         }
         this.dataFlow = null;
@@ -84,19 +83,19 @@ public class ConnectionResponse {
         this.managerRemoteCommsSecure = null;
         this.instanceId = null;
     }
-    
+
     public static ConnectionResponse createBlockedByFirewallResponse() {
         return new ConnectionResponse();
     }
-    
+
     public boolean isPrimary() {
         return primary;
     }
-    
+
     public boolean shouldTryLater() {
         return tryLaterSeconds > 0;
     }
-    
+
     public boolean isBlockedByFirewall() {
         return blockedByFirewall;
     }
@@ -104,11 +103,11 @@ public class ConnectionResponse {
     public int getTryLaterSeconds() {
         return tryLaterSeconds;
     }
-    
+
     public StandardDataFlow getDataFlow() {
         return dataFlow;
     }
-    
+
     public NodeIdentifier getNodeIdentifier() {
         return nodeIdentifier;
     }
@@ -116,23 +115,22 @@ public class ConnectionResponse {
     public Integer getManagerRemoteInputPort() {
         return managerRemoteInputPort;
     }
-    
+
     public Boolean isManagerRemoteCommsSecure() {
         return managerRemoteCommsSecure;
     }
-    
+
     public String getInstanceId() {
         return instanceId;
     }
-    
+
     public void setClusterManagerDN(final String dn) {
         this.clusterManagerDN = dn;
     }
-    
+
     /**
-     * Returns the DN of the NCM, if it is available or <code>null</code> otherwise.
-     * 
-     * @return
+     * @return the DN of the NCM, if it is available or <code>null</code>
+     * otherwise
      */
     public String getClusterManagerDN() {
         return clusterManagerDN;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/Heartbeat.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/Heartbeat.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/Heartbeat.java
index 67324a1..04fb3f0 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/Heartbeat.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/Heartbeat.java
@@ -23,44 +23,45 @@ import org.apache.nifi.cluster.protocol.jaxb.message.HeartbeatAdapter;
 
 /**
  * A heartbeat for indicating the status of a node to the cluster.
+ *
  * @author unattributed
  */
 @XmlJavaTypeAdapter(HeartbeatAdapter.class)
 public class Heartbeat {
-    
+
     private final NodeIdentifier nodeIdentifier;
     private final boolean primary;
     private final boolean connected;
     private final long createdTimestamp;
     private final byte[] payload;
-    
+
     public Heartbeat(final NodeIdentifier nodeIdentifier, final boolean primary, final boolean connected, final byte[] payload) {
-        if(nodeIdentifier == null) {
+        if (nodeIdentifier == null) {
             throw new IllegalArgumentException("Node Identifier may not be null.");
-        } 
+        }
         this.nodeIdentifier = nodeIdentifier;
         this.primary = primary;
         this.connected = connected;
         this.payload = payload;
         this.createdTimestamp = new Date().getTime();
     }
-    
+
     public NodeIdentifier getNodeIdentifier() {
         return nodeIdentifier;
     }
-    
+
     public byte[] getPayload() {
         return payload;
     }
-    
+
     public boolean isPrimary() {
         return primary;
     }
-    
+
     public boolean isConnected() {
         return connected;
     }
-    
+
     @XmlTransient
     public long getCreatedTimestamp() {
         return createdTimestamp;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/NodeBulletins.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/NodeBulletins.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/NodeBulletins.java
index a120524..86df107 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/NodeBulletins.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/NodeBulletins.java
@@ -40,5 +40,5 @@ public class NodeBulletins {
     public byte[] getPayload() {
         return payload;
     }
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/NodeIdentifier.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/NodeIdentifier.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/NodeIdentifier.java
index 1893186..4b10be6 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/NodeIdentifier.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/NodeIdentifier.java
@@ -19,56 +19,68 @@ package org.apache.nifi.cluster.protocol;
 import org.apache.commons.lang3.StringUtils;
 
 /**
- * A node identifier denoting the coordinates of a flow controller that is connected 
- * to a cluster.  Nodes provide an external public API interface and an internal private
- * interface for communicating with the cluster.
- * 
- * The external API interface and internal protocol each require an IP or hostname 
- * as well as a port for communicating. 
- * 
+ * A node identifier denoting the coordinates of a flow controller that is
+ * connected to a cluster. Nodes provide an external public API interface and an
+ * internal private interface for communicating with the cluster.
+ *
+ * The external API interface and internal protocol each require an IP or
+ * hostname as well as a port for communicating.
+ *
  * This class overrides hashCode and equals and considers two instances to be
  * equal if they have the equal IDs.
- * 
+ *
  * @author unattributed
  * @Immutable
  * @Threadsafe
  */
 public class NodeIdentifier {
- 
-    /** the unique identifier for the node */
+
+    /**
+     * the unique identifier for the node
+     */
     private final String id;
-    
-    /** the IP or hostname to use for sending requests to the node's external interface */
+
+    /**
+     * the IP or hostname to use for sending requests to the node's external
+     * interface
+     */
     private final String apiAddress;
-    
-    /** the port to use use for sending requests to the node's external interface */
-    private final int apiPort;    
-    
-    /** the IP or hostname to use for sending requests to the node's internal interface */
+
+    /**
+     * the port to use use for sending requests to the node's external interface
+     */
+    private final int apiPort;
+
+    /**
+     * the IP or hostname to use for sending requests to the node's internal
+     * interface
+     */
     private final String socketAddress;
-    
-    /** the port to use use for sending requests to the node's internal interface */
+
+    /**
+     * the port to use use for sending requests to the node's internal interface
+     */
     private final int socketPort;
-    
+
     private final String nodeDn;
 
     public NodeIdentifier(final String id, final String apiAddress, final int apiPort, final String socketAddress, final int socketPort) {
         this(id, apiAddress, apiPort, socketAddress, socketPort, null);
     }
-    
+
     public NodeIdentifier(final String id, final String apiAddress, final int apiPort, final String socketAddress, final int socketPort, final String dn) {
-        
-        if(StringUtils.isBlank(id)) {
+
+        if (StringUtils.isBlank(id)) {
             throw new IllegalArgumentException("Node ID may not be empty or null.");
-        } else if(StringUtils.isBlank(apiAddress)) {
+        } else if (StringUtils.isBlank(apiAddress)) {
             throw new IllegalArgumentException("Node API address may not be empty or null.");
-        } else if(StringUtils.isBlank(socketAddress)) {
+        } else if (StringUtils.isBlank(socketAddress)) {
             throw new IllegalArgumentException("Node socket address may not be empty or null.");
-        } 
-        
+        }
+
         validatePort(apiPort);
         validatePort(socketPort);
-        
+
         this.id = id;
         this.apiAddress = apiAddress;
         this.apiPort = apiPort;
@@ -80,11 +92,11 @@ public class NodeIdentifier {
     public String getId() {
         return id;
     }
-    
+
     public String getDN() {
         return nodeDn;
     }
-    
+
     public String getApiAddress() {
         return apiAddress;
     }
@@ -96,22 +108,22 @@ public class NodeIdentifier {
     public String getSocketAddress() {
         return socketAddress;
     }
-    
+
     public int getSocketPort() {
         return socketPort;
     }
-    
+
     private void validatePort(final int port) {
-        if(port < 1 || port > 65535) {
+        if (port < 1 || port > 65535) {
             throw new IllegalArgumentException("Port must be inclusively in the range [1, 65535].  Port given: " + port);
-        }   
+        }
     }
-    
+
     /**
      * Compares the id of two node identifiers for equality.
-     * 
+     *
      * @param obj a node identifier
-     * 
+     *
      * @return true if the id is equal; false otherwise
      */
     @Override
@@ -130,33 +142,33 @@ public class NodeIdentifier {
     }
 
     /**
-     * Compares API address/port and socket address/port for equality.  The 
-     * id is not used for comparison.
-     * 
+     * Compares API address/port and socket address/port for equality. The id is
+     * not used for comparison.
+     *
      * @param other a node identifier
-     * 
+     *
      * @return true if API address/port and socket address/port are equal; false
      * otherwise
      */
     public boolean logicallyEquals(final NodeIdentifier other) {
-        if(other == null) {
+        if (other == null) {
             return false;
         }
         if ((this.apiAddress == null) ? (other.apiAddress != null) : !this.apiAddress.equals(other.apiAddress)) {
             return false;
         }
-        if(this.apiPort != other.apiPort) {
+        if (this.apiPort != other.apiPort) {
             return false;
         }
         if ((this.socketAddress == null) ? (other.socketAddress != null) : !this.socketAddress.equals(other.socketAddress)) {
             return false;
         }
-        if(this.socketPort != other.socketPort) {
+        if (this.socketPort != other.socketPort) {
             return false;
         }
         return true;
     }
-    
+
     @Override
     public int hashCode() {
         int hash = 7;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/NodeProtocolSender.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/NodeProtocolSender.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/NodeProtocolSender.java
index 1edcb91..f3e5df4 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/NodeProtocolSender.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/NodeProtocolSender.java
@@ -24,50 +24,61 @@ import org.apache.nifi.cluster.protocol.message.NodeBulletinsMessage;
 import org.apache.nifi.cluster.protocol.message.ReconnectionFailureMessage;
 
 /**
- * An interface for sending protocol messages from a node to the cluster manager.
- * @author unattributed
+ * An interface for sending protocol messages from a node to the cluster
+ * manager.
+ *
  */
 public interface NodeProtocolSender {
-    
+
     /**
      * Sends a "connection request" message to the cluster manager.
+     *
      * @param msg a message
      * @return the response
-     * @throws UnknownServiceAddressException if the cluster manager's address is not known
+     * @throws UnknownServiceAddressException if the cluster manager's address
+     * is not known
      * @throws ProtocolException if communication failed
      */
     ConnectionResponseMessage requestConnection(ConnectionRequestMessage msg) throws ProtocolException, UnknownServiceAddressException;
-    
+
     /**
      * Sends a "heartbeat" message to the cluster manager.
+     *
      * @param msg a message
-     * @throws UnknownServiceAddressException if the cluster manager's address is not known
+     * @throws UnknownServiceAddressException if the cluster manager's address
+     * is not known
      * @throws ProtocolException if communication failed
      */
     void heartbeat(HeartbeatMessage msg) throws ProtocolException, UnknownServiceAddressException;
-    
+
     /**
      * Sends a bulletins message to the cluster manager.
-     * @param msg
-     * @throws ProtocolException
-     * @throws UnknownServiceAddressException 
+     *
+     * @param msg a message
+     * @throws ProtocolException pe
+     * @throws UnknownServiceAddressException ex
      */
     void sendBulletins(NodeBulletinsMessage msg) throws ProtocolException, UnknownServiceAddressException;
-    
+
     /**
      * Sends a failure notification if the controller was unable start.
+     *
      * @param msg a message
-     * @throws UnknownServiceAddressException if the cluster manager's address is not known
+     * @throws UnknownServiceAddressException if the cluster manager's address
+     * is not known
      * @throws ProtocolException if communication failed
      */
     void notifyControllerStartupFailure(ControllerStartupFailureMessage msg) throws ProtocolException, UnknownServiceAddressException;
-    
+
     /**
-     * Sends a failure notification if the node was unable to reconnect to the cluster
+     * Sends a failure notification if the node was unable to reconnect to the
+     * cluster
+     *
      * @param msg a message
-     * @throws UnknownServiceAddressException if the cluster manager's address is not known
+     * @throws UnknownServiceAddressException if the cluster manager's address
+     * is not known
      * @throws ProtocolException if communication failed
      */
     void notifyReconnectionFailure(ReconnectionFailureMessage msg) throws ProtocolException, UnknownServiceAddressException;
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolContext.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolContext.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolContext.java
index b614e76..11a3912 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolContext.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolContext.java
@@ -17,22 +17,24 @@
 package org.apache.nifi.cluster.protocol;
 
 /**
- * The context for communicating using the internal cluster protocol. 
- * 
+ * The context for communicating using the internal cluster protocol.
+ *
  * @param <T> The type of protocol message.
- * 
+ *
  * @author unattributed
  */
 public interface ProtocolContext<T> {
- 
+
     /**
      * Creates a marshaller for serializing protocol messages.
+     *
      * @return a marshaller
      */
     ProtocolMessageMarshaller<T> createMarshaller();
-    
+
     /**
      * Creates an unmarshaller for deserializing protocol messages.
+     *
      * @return a unmarshaller
      */
     ProtocolMessageUnmarshaller<T> createUnmarshaller();

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolException.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolException.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolException.java
index f11ad84..b6c3737 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolException.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolException.java
@@ -19,21 +19,22 @@ package org.apache.nifi.cluster.protocol;
 /**
  * The base exception for problems encountered while communicating within the
  * cluster.
+ *
  * @author unattributed
  */
 public class ProtocolException extends RuntimeException {
-    
+
     public ProtocolException() {
     }
-    
+
     public ProtocolException(String msg) {
         super(msg);
     }
-    
+
     public ProtocolException(Throwable cause) {
         super(cause);
     }
-    
+
     public ProtocolException(String msg, Throwable cause) {
         super(msg, cause);
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolHandler.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolHandler.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolHandler.java
index 6de87db..b2bace9 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolHandler.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolHandler.java
@@ -20,25 +20,26 @@ import org.apache.nifi.cluster.protocol.message.ProtocolMessage;
 
 /**
  * A handler for processing protocol messages.
- * @author unattributed
+ *
  */
 public interface ProtocolHandler {
-    
+
     /**
      * Handles the given protocol message or throws an exception if it cannot
-     * handle the message.  If no response is needed by the protocol, then null
+     * handle the message. If no response is needed by the protocol, then null
      * should be returned.
-     * 
+     *
      * @param msg a message
      * @return a response or null, if no response is necessary
-     * 
+     *
      * @throws ProtocolException if the message could not be processed
      */
     ProtocolMessage handle(ProtocolMessage msg) throws ProtocolException;
-    
+
     /**
-     * @param msg
-     * @return true if the handler can process the given message; false otherwise
+     * @param msg a message
+     * @return true if the handler can process the given message; false
+     * otherwise
      */
     boolean canHandle(ProtocolMessage msg);
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolListener.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolListener.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolListener.java
index 32f0f5d..2f35241 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolListener.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolListener.java
@@ -23,48 +23,53 @@ import org.apache.nifi.reporting.BulletinRepository;
 
 /**
  * Defines the interface for a listener to process protocol messages.
- * @author unattributed
+ *
  */
 public interface ProtocolListener {
-    
+
     /**
-     * Starts the instance for listening for messages.  Start may only be called
+     * Starts the instance for listening for messages. Start may only be called
      * if the instance is not running.
-     * @throws java.io.IOException
+     *
+     * @throws java.io.IOException ex
      */
     void start() throws IOException;
-    
+
     /**
-     * Stops the instance from listening for messages.  Stop may only be called
+     * Stops the instance from listening for messages. Stop may only be called
      * if the instance is running.
-     * @throws java.io.IOException
+     *
+     * @throws java.io.IOException ex
      */
     void stop() throws IOException;
-    
+
     /**
      * @return true if the instance is started; false otherwise.
      */
     boolean isRunning();
-    
+
     /**
      * @return the handlers registered with the listener
      */
     Collection<ProtocolHandler> getHandlers();
-    
+
     /**
      * Registers a handler with the listener.
+     *
      * @param handler a handler
      */
     void addHandler(ProtocolHandler handler);
-    
+
     /**
      * Sets the BulletinRepository that can be used to report bulletins
-     * @param bulletinRepository
+     *
+     * @param bulletinRepository repo
      */
     void setBulletinRepository(BulletinRepository bulletinRepository);
-    
+
     /**
      * Unregisters the handler with the listener.
+     *
      * @param handler a handler
      * @return true if the handler was removed; false otherwise
      */

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolMessageMarshaller.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolMessageMarshaller.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolMessageMarshaller.java
index bb436e0..4e43d4d 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolMessageMarshaller.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolMessageMarshaller.java
@@ -21,15 +21,16 @@ import java.io.OutputStream;
 
 /**
  * Defines a marshaller for serializing protocol messages.
- * 
+ *
  * @param <T> The type of protocol message.
- * 
+ *
  * @author unattributed
  */
 public interface ProtocolMessageMarshaller<T> {
-    
+
     /**
      * Serializes the given message to the given output stream.
+     *
      * @param msg a message
      * @param os an output stream
      * @throws IOException if the message could not be serialized to the stream

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolMessageUnmarshaller.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolMessageUnmarshaller.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolMessageUnmarshaller.java
index c690e7b..e8910bd 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolMessageUnmarshaller.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/ProtocolMessageUnmarshaller.java
@@ -21,18 +21,19 @@ import java.io.InputStream;
 
 /**
  * Defines an unmarshaller for deserializing protocol messages.
- * 
+ *
  * @param <T> The type of protocol message.
- * 
- * @author unattributed
+ *
  */
 public interface ProtocolMessageUnmarshaller<T> {
-    
+
     /**
      * Deserializes a message on the given input stream.
+     *
      * @param is an input stream
-     * @return 
-     * @throws IOException if the message could not be deserialized from the stream
+     * @return deserialized message
+     * @throws IOException if the message could not be deserialized from the
+     * stream
      */
     T unmarshal(InputStream is) throws IOException;
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/StandardDataFlow.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/StandardDataFlow.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/StandardDataFlow.java
index c2d16fc..0f0ed69 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/StandardDataFlow.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/StandardDataFlow.java
@@ -25,25 +25,25 @@ import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
 import org.apache.nifi.cluster.protocol.jaxb.message.DataFlowAdapter;
 
 /**
- * Represents a dataflow, which includes the raw bytes of the flow.xml and 
+ * Represents a dataflow, which includes the raw bytes of the flow.xml and
  * whether processors should be started automatically at application startup.
  */
 @XmlJavaTypeAdapter(DataFlowAdapter.class)
 public class StandardDataFlow implements Serializable, DataFlow {
-    
+
     private final byte[] flow;
     private final byte[] templateBytes;
     private final byte[] snippetBytes;
 
     private boolean autoStartProcessors;
-    
+
     /**
-     * Constructs an instance.  
-     * 
+     * Constructs an instance.
+     *
      * @param flow a valid flow as bytes, which cannot be null
      * @param templateBytes an XML representation of templates
      * @param snippetBytes an XML representation of snippets
-     * 
+     *
      * @throws NullPointerException if any argument is null
      */
     public StandardDataFlow(final byte[] flow, final byte[] templateBytes, final byte[] snippetBytes) {
@@ -51,20 +51,20 @@ public class StandardDataFlow implements Serializable, DataFlow {
         this.templateBytes = templateBytes;
         this.snippetBytes = snippetBytes;
     }
-    
+
     public StandardDataFlow(final DataFlow toCopy) {
         this.flow = copy(toCopy.getFlow());
         this.templateBytes = copy(toCopy.getTemplates());
         this.snippetBytes = copy(toCopy.getSnippets());
         this.autoStartProcessors = toCopy.isAutoStartProcessors();
     }
-    
+
     private static byte[] copy(final byte[] bytes) {
         return bytes == null ? null : Arrays.copyOf(bytes, bytes.length);
     }
-    
+
     /**
-     * @return the raw byte array of the flow 
+     * @return the raw byte array of the flow
      */
     public byte[] getFlow() {
         return flow;
@@ -76,26 +76,26 @@ public class StandardDataFlow implements Serializable, DataFlow {
     public byte[] getTemplates() {
         return templateBytes;
     }
-    
+
     /**
      * @return the raw byte array of the snippets
      */
     public byte[] getSnippets() {
         return snippetBytes;
     }
-    
+
     /**
-     * @return true if processors should be automatically started at application 
-     * startup; false otherwise 
+     * @return true if processors should be automatically started at application
+     * startup; false otherwise
      */
     public boolean isAutoStartProcessors() {
         return autoStartProcessors;
     }
-    
+
     /**
-     * 
+     *
      * Sets the flag to automatically start processors at application startup.
-     * 
+     *
      * @param autoStartProcessors true if processors should be automatically
      * started at application startup; false otherwise
      */

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/UnknownServiceAddressException.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/UnknownServiceAddressException.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/UnknownServiceAddressException.java
index 41c74eb..dc22ba0 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/UnknownServiceAddressException.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/UnknownServiceAddressException.java
@@ -18,21 +18,22 @@ package org.apache.nifi.cluster.protocol;
 
 /**
  * Represents the exceptional case when a service's address is not known.
+ *
  * @author unattributed
  */
 public class UnknownServiceAddressException extends RuntimeException {
-    
+
     public UnknownServiceAddressException() {
     }
-    
+
     public UnknownServiceAddressException(String msg) {
         super(msg);
     }
-    
+
     public UnknownServiceAddressException(Throwable cause) {
         super(cause);
     }
-    
+
     public UnknownServiceAddressException(String msg, Throwable cause) {
         super(msg, cause);
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderImpl.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderImpl.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderImpl.java
index ceb3fcb..636a6d3 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderImpl.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderImpl.java
@@ -43,34 +43,32 @@ import org.apache.nifi.util.FormatUtils;
 
 /**
  * A protocol sender for sending protocol messages from the cluster manager to
- * nodes.  
- * 
- * Connection-type requests (e.g., reconnection, disconnection) by nature of 
- * starting/stopping flow controllers take longer than other types of protocol 
- * messages.  Therefore, a handshake timeout may be specified to lengthen the 
+ * nodes.
+ *
+ * Connection-type requests (e.g., reconnection, disconnection) by nature of
+ * starting/stopping flow controllers take longer than other types of protocol
+ * messages. Therefore, a handshake timeout may be specified to lengthen the
  * allowable time for communication with the node.
- * 
- * @author unattributed
+ *
  */
 public class ClusterManagerProtocolSenderImpl implements ClusterManagerProtocolSender {
 
-    
     private final ProtocolContext<ProtocolMessage> protocolContext;
     private final SocketConfiguration socketConfiguration;
     private int handshakeTimeoutSeconds;
     private volatile BulletinRepository bulletinRepository;
 
     public ClusterManagerProtocolSenderImpl(final SocketConfiguration socketConfiguration, final ProtocolContext<ProtocolMessage> protocolContext) {
-        if(socketConfiguration == null) {
+        if (socketConfiguration == null) {
             throw new IllegalArgumentException("Socket configuration may not be null.");
-        } else if(protocolContext == null) {
+        } else if (protocolContext == null) {
             throw new IllegalArgumentException("Protocol Context may not be null.");
         }
         this.socketConfiguration = socketConfiguration;
         this.protocolContext = protocolContext;
         this.handshakeTimeoutSeconds = -1;  // less than zero denotes variable not configured
     }
-    
+
     @Override
     public void setBulletinRepository(final BulletinRepository bulletinRepository) {
         this.bulletinRepository = bulletinRepository;
@@ -78,76 +76,79 @@ public class ClusterManagerProtocolSenderImpl implements ClusterManagerProtocolS
 
     /**
      * Requests the data flow from a node.
+     *
      * @param msg a message
      * @return the message response
-     * @throws @throws ProtocolException if the message failed to be sent or the response was malformed
+     * @throws ProtocolException if the message failed to be sent or the
+     * response was malformed
      */
     @Override
     public FlowResponseMessage requestFlow(final FlowRequestMessage msg) throws ProtocolException {
         Socket socket = null;
         try {
-        	socket = createSocket(msg.getNodeId(), false);
-            
+            socket = createSocket(msg.getNodeId(), false);
+
             try {
                 // marshal message to output stream
                 final ProtocolMessageMarshaller<ProtocolMessage> marshaller = protocolContext.createMarshaller();
                 marshaller.marshal(msg, socket.getOutputStream());
-            } catch(final IOException ioe) {
+            } catch (final IOException ioe) {
                 throw new ProtocolException("Failed marshalling '" + msg.getType() + "' protocol message due to: " + ioe, ioe);
             }
-            
+
             final ProtocolMessage response;
             try {
                 // unmarshall response and return
                 final ProtocolMessageUnmarshaller<ProtocolMessage> unmarshaller = protocolContext.createUnmarshaller();
                 response = unmarshaller.unmarshal(socket.getInputStream());
-            } catch(final IOException ioe) {
+            } catch (final IOException ioe) {
                 throw new ProtocolException("Failed unmarshalling '" + MessageType.FLOW_RESPONSE + "' protocol message due to: " + ioe, ioe);
-            } 
-            
-            if(MessageType.FLOW_RESPONSE == response.getType()) {
+            }
+
+            if (MessageType.FLOW_RESPONSE == response.getType()) {
                 return (FlowResponseMessage) response;
             } else {
                 throw new ProtocolException("Expected message type '" + MessageType.FLOW_RESPONSE + "' but found '" + response.getType() + "'");
             }
-            
+
         } finally {
             SocketUtils.closeQuietly(socket);
         }
     }
 
     /**
-     * Requests a node to reconnect to the cluster.  The configured value for
+     * Requests a node to reconnect to the cluster. The configured value for
      * handshake timeout is applied to the socket before making the request.
+     *
      * @param msg a message
      * @return the response
-     * @throws ProtocolException if the message failed to be sent or the response was malformed
+     * @throws ProtocolException if the message failed to be sent or the
+     * response was malformed
      */
     @Override
     public ReconnectionResponseMessage requestReconnection(final ReconnectionRequestMessage msg) throws ProtocolException {
         Socket socket = null;
         try {
-        	socket = createSocket(msg.getNodeId(), true);
+            socket = createSocket(msg.getNodeId(), true);
 
             // marshal message to output stream
             try {
                 final ProtocolMessageMarshaller<ProtocolMessage> marshaller = protocolContext.createMarshaller();
                 marshaller.marshal(msg, socket.getOutputStream());
-            } catch(final IOException ioe) {
+            } catch (final IOException ioe) {
                 throw new ProtocolException("Failed marshalling '" + msg.getType() + "' protocol message due to: " + ioe, ioe);
             }
-            
-            
+
             final ProtocolMessage response;
             try {
                 // unmarshall response and return
                 final ProtocolMessageUnmarshaller<ProtocolMessage> unmarshaller = protocolContext.createUnmarshaller();
                 response = unmarshaller.unmarshal(socket.getInputStream());
-            } catch(final IOException ioe) {
+            } catch (final IOException ioe) {
                 throw new ProtocolException("Failed unmarshalling '" + MessageType.RECONNECTION_RESPONSE + "' protocol message due to: " + ioe, ioe);
-            } 
-            
-            if(MessageType.RECONNECTION_RESPONSE == response.getType()) {
+            }
+
+            if (MessageType.RECONNECTION_RESPONSE == response.getType()) {
                 return (ReconnectionResponseMessage) response;
             } else {
                 throw new ProtocolException("Expected message type '" + MessageType.FLOW_RESPONSE + "' but found '" + response.getType() + "'");
@@ -156,10 +157,11 @@ public class ClusterManagerProtocolSenderImpl implements ClusterManagerProtocolS
             SocketUtils.closeQuietly(socket);
         }
     }
-    
+
     /**
-     * Requests a node to disconnect from the cluster.  The configured value for
+     * Requests a node to disconnect from the cluster. The configured value for
      * handshake timeout is applied to the socket before making the request.
+     *
      * @param msg a message
      * @throws ProtocolException if the message failed to be sent
      */
@@ -167,13 +169,13 @@ public class ClusterManagerProtocolSenderImpl implements ClusterManagerProtocolS
     public void disconnect(final DisconnectMessage msg) throws ProtocolException {
         Socket socket = null;
         try {
-        	socket = createSocket(msg.getNodeId(), true);
+            socket = createSocket(msg.getNodeId(), true);
 
             // marshal message to output stream
             try {
                 final ProtocolMessageMarshaller<ProtocolMessage> marshaller = protocolContext.createMarshaller();
                 marshaller.marshal(msg, socket.getOutputStream());
-            } catch(final IOException ioe) {
+            } catch (final IOException ioe) {
                 throw new ProtocolException("Failed marshalling '" + msg.getType() + "' protocol message due to: " + ioe, ioe);
             }
         } finally {
@@ -183,37 +185,36 @@ public class ClusterManagerProtocolSenderImpl implements ClusterManagerProtocolS
 
     /**
      * Assigns the primary role to a node.
-     * 
+     *
      * @param msg a message
-     * 
+     *
      * @throws ProtocolException if the message failed to be sent
      */
     @Override
     public void assignPrimaryRole(final PrimaryRoleAssignmentMessage msg) throws ProtocolException {
         Socket socket = null;
         try {
-        	socket = createSocket(msg.getNodeId(), true);
+            socket = createSocket(msg.getNodeId(), true);
 
             try {
                 // marshal message to output stream
                 final ProtocolMessageMarshaller<ProtocolMessage> marshaller = protocolContext.createMarshaller();
                 marshaller.marshal(msg, socket.getOutputStream());
-            } catch(final IOException ioe) {
+            } catch (final IOException ioe) {
                 throw new ProtocolException("Failed marshalling '" + msg.getType() + "' protocol message due to: " + ioe, ioe);
             }
         } finally {
             SocketUtils.closeQuietly(socket);
         }
     }
-    
-    
+
     private void setConnectionHandshakeTimeoutOnSocket(final Socket socket) throws SocketException {
         // update socket timeout, if handshake timeout was set; otherwise use socket's current timeout
-        if(handshakeTimeoutSeconds >= 0) {
+        if (handshakeTimeoutSeconds >= 0) {
             socket.setSoTimeout(handshakeTimeoutSeconds * 1000);
-        }   
+        }
     }
-    
+
     public SocketConfiguration getSocketConfiguration() {
         return socketConfiguration;
     }
@@ -227,18 +228,18 @@ public class ClusterManagerProtocolSenderImpl implements ClusterManagerProtocolS
     }
 
     private Socket createSocket(final NodeIdentifier nodeId, final boolean applyHandshakeTimeout) {
-    	return createSocket(nodeId.getSocketAddress(), nodeId.getSocketPort(), applyHandshakeTimeout);
+        return createSocket(nodeId.getSocketAddress(), nodeId.getSocketPort(), applyHandshakeTimeout);
     }
-    
+
     private Socket createSocket(final String host, final int port, final boolean applyHandshakeTimeout) {
-    	try {
+        try {
             // create a socket
             final Socket socket = SocketUtils.createSocket(InetSocketAddress.createUnresolved(host, port), socketConfiguration);
-            if ( applyHandshakeTimeout ) {
-            	setConnectionHandshakeTimeoutOnSocket(socket);
+            if (applyHandshakeTimeout) {
+                setConnectionHandshakeTimeoutOnSocket(socket);
             }
             return socket;
-        } catch(final IOException ioe) {
+        } catch (final IOException ioe) {
             throw new ProtocolException("Failed to create socket due to: " + ioe, ioe);
         }
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderListener.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderListener.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderListener.java
index 933e5fa..2837f1a 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderListener.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterManagerProtocolSenderListener.java
@@ -32,21 +32,21 @@ import org.apache.nifi.cluster.protocol.message.ReconnectionResponseMessage;
 import org.apache.nifi.reporting.BulletinRepository;
 
 /**
- * A wrapper class for consolidating a protocol sender and listener for the cluster
- * manager.
- * 
+ * A wrapper class for consolidating a protocol sender and listener for the
+ * cluster manager.
+ *
  * @author unattributed
  */
 public class ClusterManagerProtocolSenderListener implements ClusterManagerProtocolSender, ProtocolListener {
-    
+
     private final ClusterManagerProtocolSender sender;
-    
+
     private final ProtocolListener listener;
-    
+
     public ClusterManagerProtocolSenderListener(final ClusterManagerProtocolSender sender, final ProtocolListener listener) {
-        if(sender == null) {
+        if (sender == null) {
             throw new IllegalArgumentException("ClusterManagerProtocolSender may not be null.");
-        } else if(listener == null) {
+        } else if (listener == null) {
             throw new IllegalArgumentException("ProtocolListener may not be null.");
         }
         this.sender = sender;
@@ -55,7 +55,7 @@ public class ClusterManagerProtocolSenderListener implements ClusterManagerProto
 
     @Override
     public void stop() throws IOException {
-        if(!isRunning()) {
+        if (!isRunning()) {
             throw new IllegalStateException("Instance is already stopped.");
         }
         listener.stop();
@@ -63,7 +63,7 @@ public class ClusterManagerProtocolSenderListener implements ClusterManagerProto
 
     @Override
     public void start() throws IOException {
-        if(isRunning()) {
+        if (isRunning()) {
             throw new IllegalStateException("Instance is already started.");
         }
         listener.start();
@@ -88,13 +88,13 @@ public class ClusterManagerProtocolSenderListener implements ClusterManagerProto
     public void addHandler(final ProtocolHandler handler) {
         listener.addHandler(handler);
     }
-    
+
     @Override
     public void setBulletinRepository(final BulletinRepository bulletinRepository) {
         listener.setBulletinRepository(bulletinRepository);
         sender.setBulletinRepository(bulletinRepository);
     }
-    
+
     @Override
     public FlowResponseMessage requestFlow(final FlowRequestMessage msg) throws ProtocolException {
         return sender.requestFlow(msg);
@@ -109,10 +109,10 @@ public class ClusterManagerProtocolSenderListener implements ClusterManagerProto
     public void disconnect(DisconnectMessage msg) throws ProtocolException {
         sender.disconnect(msg);
     }
-    
+
     @Override
     public void assignPrimaryRole(PrimaryRoleAssignmentMessage msg) throws ProtocolException {
         sender.assignPrimaryRole(msg);
     }
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceDiscovery.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceDiscovery.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceDiscovery.java
index 24e51e0..f808c83 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceDiscovery.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceDiscovery.java
@@ -45,7 +45,6 @@ import org.slf4j.LoggerFactory;
  * discovery. The instance must be stopped before termination of the JVM to
  * ensure proper resource clean-up.
  *
- * @author unattributed
  */
 public class ClusterServiceDiscovery implements MulticastServiceDiscovery, ProtocolListener {
 
@@ -60,7 +59,6 @@ public class ClusterServiceDiscovery implements MulticastServiceDiscovery, Proto
      */
     private DiscoverableService service;
 
-    
     public ClusterServiceDiscovery(final String serviceName, final InetSocketAddress multicastAddress,
             final MulticastConfiguration multicastConfiguration, final ProtocolContext<ProtocolMessage> protocolContext) {
 
@@ -162,7 +160,8 @@ public class ClusterServiceDiscovery implements MulticastServiceDiscovery, Proto
                                 || broadcastMsg.getPort() != oldService.getServiceAddress().getPort()) {
                             service = new DiscoverableServiceImpl(serviceName, InetSocketAddress.createUnresolved(broadcastMsg.getAddress(), broadcastMsg.getPort()));
                             final InetSocketAddress oldServiceAddress = (oldService == null) ? null : oldService.getServiceAddress();
-                            logger.info(String.format("Updating cluster service address for '%s' from '%s' to '%s'", serviceName, prettyPrint(oldServiceAddress), prettyPrint(service.getServiceAddress())));
+                            logger.info(String.format("Updating cluster service address for '%s' from '%s' to '%s'",
+                                    serviceName, prettyPrint(oldServiceAddress), prettyPrint(service.getServiceAddress())));
                         }
                     }
                     return null;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceLocator.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceLocator.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceLocator.java
index bebfde8..64ca7fa 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceLocator.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServiceLocator.java
@@ -27,39 +27,39 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * Implements the ServiceLocator interface for locating the socket address
- * of a cluster service.  Depending on configuration, the address may be located
- * using service discovery.  If using service discovery, then the service methods
- * must be used for starting and stopping discovery.
- * 
- * Service discovery may be used in conjunction with a fixed port.  In this case,
- * the service discovery will yield the service IP/host while the fixed port will
- * be used for the port.
- * 
+ * Implements the ServiceLocator interface for locating the socket address of a
+ * cluster service. Depending on configuration, the address may be located using
+ * service discovery. If using service discovery, then the service methods must
+ * be used for starting and stopping discovery.
+ *
+ * Service discovery may be used in conjunction with a fixed port. In this case,
+ * the service discovery will yield the service IP/host while the fixed port
+ * will be used for the port.
+ *
  * Alternatively, the instance may be configured with exact service location, in
- * which case, no service discovery occurs and the caller will always receive the
- * configured service.
- * 
+ * which case, no service discovery occurs and the caller will always receive
+ * the configured service.
+ *
  * @author unattributed
  */
 public class ClusterServiceLocator implements ServiceDiscovery {
-    
+
     private static final Logger logger = LoggerFactory.getLogger(ClusterServiceLocator.class);
-    
+
     private final String serviceName;
-    
+
     private final ClusterServiceDiscovery serviceDiscovery;
-    
+
     private final DiscoverableService fixedService;
 
     private final int fixedServicePort;
-    
+
     private final AttemptsConfig attemptsConfig = new AttemptsConfig();
-    
+
     private final AtomicBoolean running = new AtomicBoolean(false);
-    
+
     public ClusterServiceLocator(final ClusterServiceDiscovery serviceDiscovery) {
-        if(serviceDiscovery == null) {
+        if (serviceDiscovery == null) {
             throw new IllegalArgumentException("ClusterServiceDiscovery may not be null.");
         }
         this.serviceDiscovery = serviceDiscovery;
@@ -67,9 +67,9 @@ public class ClusterServiceLocator implements ServiceDiscovery {
         this.fixedServicePort = 0;
         this.serviceName = serviceDiscovery.getServiceName();
     }
-    
+
     public ClusterServiceLocator(final ClusterServiceDiscovery serviceDiscovery, final int fixedServicePort) {
-        if(serviceDiscovery == null) {
+        if (serviceDiscovery == null) {
             throw new IllegalArgumentException("ClusterServiceDiscovery may not be null.");
         }
         this.serviceDiscovery = serviceDiscovery;
@@ -77,9 +77,9 @@ public class ClusterServiceLocator implements ServiceDiscovery {
         this.fixedServicePort = fixedServicePort;
         this.serviceName = serviceDiscovery.getServiceName();
     }
-    
+
     public ClusterServiceLocator(final DiscoverableService fixedService) {
-        if(fixedService == null) {
+        if (fixedService == null) {
             throw new IllegalArgumentException("Service may not be null.");
         }
         this.serviceDiscovery = null;
@@ -87,30 +87,30 @@ public class ClusterServiceLocator implements ServiceDiscovery {
         this.fixedServicePort = 0;
         this.serviceName = fixedService.getServiceName();
     }
-    
+
     @Override
     public DiscoverableService getService() {
-        
+
         final int numAttemptsValue;
         final int secondsBetweenAttempts;
-        synchronized(this) {
+        synchronized (this) {
             numAttemptsValue = attemptsConfig.numAttempts;
             secondsBetweenAttempts = attemptsConfig.getTimeBetweenAttempts();
         }
-        
+
         // try for a configured amount of attempts to retrieve the service address
-        for(int i = 0; i < numAttemptsValue; i++) {
+        for (int i = 0; i < numAttemptsValue; i++) {
 
-            if(fixedService != null) {
+            if (fixedService != null) {
                 return fixedService;
-            } else if(serviceDiscovery != null) {
-                
+            } else if (serviceDiscovery != null) {
+
                 final DiscoverableService discoveredService = serviceDiscovery.getService();
-                
+
                 // if we received an address
-                if(discoveredService != null) {
+                if (discoveredService != null) {
                     // if we were configured with a fixed port, then use the discovered host and fixed port; otherwise use the discovered address
-                    if(fixedServicePort > 0) {
+                    if (fixedServicePort > 0) {
                         // create service using discovered service name and address with fixed service port
                         final InetSocketAddress addr = InetSocketAddress.createUnresolved(discoveredService.getServiceAddress().getHostName(), fixedServicePort);
                         final DiscoverableService result = new DiscoverableServiceImpl(discoveredService.getServiceName(), addr);
@@ -120,23 +120,23 @@ public class ClusterServiceLocator implements ServiceDiscovery {
                     }
                 }
             }
-            
+
             // could not obtain service address, so sleep a bit
             try {
-                logger.debug(String.format("Locating Cluster Service '%s' Attempt: %d of %d failed.  Trying again in %d seconds.", 
-                    serviceName, (i + 1), numAttemptsValue, secondsBetweenAttempts));
+                logger.debug(String.format("Locating Cluster Service '%s' Attempt: %d of %d failed.  Trying again in %d seconds.",
+                        serviceName, (i + 1), numAttemptsValue, secondsBetweenAttempts));
                 Thread.sleep(secondsBetweenAttempts * 1000);
-            } catch(final InterruptedException ie) {
+            } catch (final InterruptedException ie) {
                 break;
             }
-            
+
         }
 
         return null;
     }
 
     public boolean isRunning() {
-        if(serviceDiscovery != null) {
+        if (serviceDiscovery != null) {
             return serviceDiscovery.isRunning();
         } else {
             return running.get();
@@ -144,31 +144,31 @@ public class ClusterServiceLocator implements ServiceDiscovery {
     }
 
     public void start() throws IOException {
-        
-        if(isRunning()) {
+
+        if (isRunning()) {
             throw new IllegalStateException("Instance is already started.");
         }
-        
-        if(serviceDiscovery != null) {
+
+        if (serviceDiscovery != null) {
             serviceDiscovery.start();
         }
         running.set(true);
     }
 
     public void stop() throws IOException {
-        
-        if(isRunning() == false) {
+
+        if (isRunning() == false) {
             throw new IllegalStateException("Instance is already stopped.");
         }
-        
-        if(serviceDiscovery != null) {
+
+        if (serviceDiscovery != null) {
             serviceDiscovery.stop();
         }
         running.set(false);
     }
-    
+
     public synchronized void setAttemptsConfig(final AttemptsConfig config) {
-        if(config == null) {
+        if (config == null) {
             throw new IllegalArgumentException("Attempts configuration may not be null.");
         }
         this.attemptsConfig.numAttempts = config.numAttempts;
@@ -183,21 +183,21 @@ public class ClusterServiceLocator implements ServiceDiscovery {
         config.timeBetweenAttempsUnit = this.attemptsConfig.timeBetweenAttempsUnit;
         return config;
     }
-    
+
     public static class AttemptsConfig {
-        
+
         private int numAttempts = 1;
-        
+
         private int timeBetweenAttempts = 1;
-        
+
         private TimeUnit timeBetweenAttempsUnit = TimeUnit.SECONDS;
-        
+
         public int getNumAttempts() {
             return numAttempts;
         }
 
         public void setNumAttempts(int numAttempts) {
-            if(numAttempts <= 0) {
+            if (numAttempts <= 0) {
                 throw new IllegalArgumentException("Number of attempts must be positive: " + numAttempts);
             }
             this.numAttempts = numAttempts;
@@ -208,9 +208,9 @@ public class ClusterServiceLocator implements ServiceDiscovery {
         }
 
         public void setTimeBetweenAttempsUnit(TimeUnit timeBetweenAttempsUnit) {
-            if(timeBetweenAttempts <= 0) {
+            if (timeBetweenAttempts <= 0) {
                 throw new IllegalArgumentException("Time between attempts must be positive: " + numAttempts);
-            } 
+            }
             this.timeBetweenAttempsUnit = timeBetweenAttempsUnit;
         }
 
@@ -219,9 +219,9 @@ public class ClusterServiceLocator implements ServiceDiscovery {
         }
 
         public void setTimeBetweenAttempts(int timeBetweenAttempts) {
-            if(timeBetweenAttempts <= 0) {
-            throw new IllegalArgumentException("Time between attempts must be positive: " + numAttempts);
-        } 
+            if (timeBetweenAttempts <= 0) {
+                throw new IllegalArgumentException("Time between attempts must be positive: " + numAttempts);
+            }
             this.timeBetweenAttempts = timeBetweenAttempts;
         }
 

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServicesBroadcaster.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServicesBroadcaster.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServicesBroadcaster.java
index e9e7d5b..3458760 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServicesBroadcaster.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/ClusterServicesBroadcaster.java
@@ -21,7 +21,10 @@ import java.io.IOException;
 import java.net.DatagramPacket;
 import java.net.InetSocketAddress;
 import java.net.MulticastSocket;
-import java.util.*;
+import java.util.Collections;
+import java.util.Set;
+import java.util.Timer;
+import java.util.TimerTask;
 import java.util.concurrent.CopyOnWriteArraySet;
 import java.util.concurrent.TimeUnit;
 
@@ -39,75 +42,76 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * Broadcasts services used by the clustering software using multicast communication.
- * A configurable delay occurs after broadcasting the collection of services.
- * 
+ * Broadcasts services used by the clustering software using multicast
+ * communication. A configurable delay occurs after broadcasting the collection
+ * of services.
+ *
  * The client caller is responsible for starting and stopping the broadcasting.
  * The instance must be stopped before termination of the JVM to ensure proper
  * resource clean-up.
- * 
+ *
  * @author unattributed
  */
 public class ClusterServicesBroadcaster implements MulticastServicesBroadcaster {
-    
+
     private static final Logger logger = new NiFiLog(LoggerFactory.getLogger(ClusterServicesBroadcaster.class));
-    
+
     private final Set<DiscoverableService> services = new CopyOnWriteArraySet<>();
 
     private final InetSocketAddress multicastAddress;
-    
+
     private final MulticastConfiguration multicastConfiguration;
-    
+
     private final ProtocolContext<ProtocolMessage> protocolContext;
-    
+
     private final int broadcastDelayMs;
-    
+
     private Timer broadcaster;
-    
+
     private MulticastSocket multicastSocket;
-    
-    public ClusterServicesBroadcaster(final InetSocketAddress multicastAddress, 
-            final MulticastConfiguration multicastConfiguration, 
+
+    public ClusterServicesBroadcaster(final InetSocketAddress multicastAddress,
+            final MulticastConfiguration multicastConfiguration,
             final ProtocolContext<ProtocolMessage> protocolContext, final String broadcastDelay) {
-        
-        if(multicastAddress == null) {
+
+        if (multicastAddress == null) {
             throw new IllegalArgumentException("Multicast address may not be null.");
-        } else if(multicastAddress.getAddress().isMulticastAddress() == false) {
+        } else if (multicastAddress.getAddress().isMulticastAddress() == false) {
             throw new IllegalArgumentException("Multicast group address is not a Class D IP address.");
-        } else if(protocolContext == null) {
+        } else if (protocolContext == null) {
             throw new IllegalArgumentException("Protocol Context may not be null.");
-        } else if(multicastConfiguration == null) {
+        } else if (multicastConfiguration == null) {
             throw new IllegalArgumentException("Multicast configuration may not be null.");
         }
-        
+
         this.services.addAll(services);
         this.multicastAddress = multicastAddress;
         this.multicastConfiguration = multicastConfiguration;
         this.protocolContext = protocolContext;
         this.broadcastDelayMs = (int) FormatUtils.getTimeDuration(broadcastDelay, TimeUnit.MILLISECONDS);
     }
-    
+
     public void start() throws IOException {
 
-        if(isRunning()) {
+        if (isRunning()) {
             throw new IllegalStateException("Instance is already started.");
         }
-        
+
         // setup socket
         multicastSocket = MulticastUtils.createMulticastSocket(multicastConfiguration);
-        
+
         // setup broadcaster
         broadcaster = new Timer("Cluster Services Broadcaster", /* is daemon */ true);
         broadcaster.schedule(new TimerTask() {
             @Override
             public void run() {
-                for(final DiscoverableService service : services) {
+                for (final DiscoverableService service : services) {
                     try {
 
                         final InetSocketAddress serviceAddress = service.getServiceAddress();
-                        logger.debug(String.format("Broadcasting Cluster Service '%s' at address %s:%d", 
-                            service.getServiceName(), serviceAddress.getHostName(), serviceAddress.getPort()));
-                        
+                        logger.debug(String.format("Broadcasting Cluster Service '%s' at address %s:%d",
+                                service.getServiceName(), serviceAddress.getHostName(), serviceAddress.getPort()));
+
                         // create message
                         final ServiceBroadcastMessage msg = new ServiceBroadcastMessage();
                         msg.setServiceName(service.getServiceName());
@@ -124,37 +128,37 @@ public class ClusterServicesBroadcaster implements MulticastServicesBroadcaster
                         final DatagramPacket packet = new DatagramPacket(packetBytes, packetBytes.length, multicastAddress);
                         multicastSocket.send(packet);
 
-                    } catch(final Exception ex) {
+                    } catch (final Exception ex) {
                         logger.warn(String.format("Cluster Services Broadcaster failed broadcasting service '%s' due to: %s", service.getServiceName(), ex), ex);
                     }
                 }
             }
         }, 0, broadcastDelayMs);
     }
-    
+
     public boolean isRunning() {
         return (broadcaster != null);
     }
-    
+
     public void stop() {
-        
-        if(isRunning() == false) {
+
+        if (isRunning() == false) {
             throw new IllegalStateException("Instance is already stopped.");
         }
-        
+
         broadcaster.cancel();
         broadcaster = null;
 
         // close socket
         MulticastUtils.closeQuietly(multicastSocket);
-        
+
     }
 
     @Override
     public int getBroadcastDelayMs() {
         return broadcastDelayMs;
     }
-    
+
     @Override
     public Set<DiscoverableService> getServices() {
         return Collections.unmodifiableSet(services);
@@ -164,16 +168,16 @@ public class ClusterServicesBroadcaster implements MulticastServicesBroadcaster
     public InetSocketAddress getMulticastAddress() {
         return multicastAddress;
     }
-    
+
     @Override
     public boolean addService(final DiscoverableService service) {
         return services.add(service);
     }
-    
+
     @Override
     public boolean removeService(final String serviceName) {
-        for(final DiscoverableService service : services) {
-            if(service.getServiceName().equals(serviceName)) {
+        for (final DiscoverableService service : services) {
+            if (service.getServiceName().equals(serviceName)) {
                 return services.remove(service);
             }
         }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/CopyingInputStream.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/CopyingInputStream.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/CopyingInputStream.java
index 680df65..7ac17ab 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/CopyingInputStream.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/CopyingInputStream.java
@@ -23,6 +23,7 @@ import java.io.InputStream;
 import java.io.OutputStream;
 
 public class CopyingInputStream extends FilterInputStream {
+
     private final ByteArrayOutputStream baos = new ByteArrayOutputStream();
     private final int maxBytesToCopy;
     private final InputStream in;
@@ -32,45 +33,45 @@ public class CopyingInputStream extends FilterInputStream {
         this.maxBytesToCopy = maxBytesToCopy;
         this.in = in;
     }
-    
+
     @Override
     public int read() throws IOException {
         final int delegateRead = in.read();
-        if ( delegateRead != -1 && getNumberOfBytesCopied() < maxBytesToCopy ) {
+        if (delegateRead != -1 && getNumberOfBytesCopied() < maxBytesToCopy) {
             baos.write(delegateRead);
         }
-        
+
         return delegateRead;
     }
-    
+
     @Override
     public int read(byte[] b) throws IOException {
         final int delegateRead = in.read(b);
-        if ( delegateRead >= 0 ) {
+        if (delegateRead >= 0) {
             baos.write(b, 0, Math.min(delegateRead, maxBytesToCopy - getNumberOfBytesCopied()));
         }
-        
+
         return delegateRead;
     }
-    
+
     @Override
     public int read(byte[] b, int off, int len) throws IOException {
         final int delegateRead = in.read(b, off, len);
-        if ( delegateRead >= 0 ) {
+        if (delegateRead >= 0) {
             baos.write(b, off, Math.min(delegateRead, maxBytesToCopy - getNumberOfBytesCopied()));
         }
-        
+
         return delegateRead;
     }
-    
+
     public byte[] getBytesRead() {
         return baos.toByteArray();
     }
-    
+
     public void writeBytes(final OutputStream out) throws IOException {
         baos.writeTo(out);
     }
-    
+
     public int getNumberOfBytesCopied() {
         return baos.size();
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/MulticastProtocolListener.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/MulticastProtocolListener.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/MulticastProtocolListener.java
index d3764b3..90f9124 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/MulticastProtocolListener.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/MulticastProtocolListener.java
@@ -45,20 +45,20 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * Implements a listener for protocol messages sent over multicast.  If a message
+ * Implements a listener for protocol messages sent over multicast. If a message
  * is of type MulticastProtocolMessage, then the underlying protocol message is
- * passed to the handler.  If the receiving handler produces a message response,
- * then the message is wrapped with a MulticastProtocolMessage before being 
- * sent to the originator.
- * 
- * The client caller is responsible for starting and stopping the listener.
- * The instance must be stopped before termination of the JVM to ensure proper
+ * passed to the handler. If the receiving handler produces a message response,
+ * then the message is wrapped with a MulticastProtocolMessage before being sent
+ * to the originator.
+ *
+ * The client caller is responsible for starting and stopping the listener. The
+ * instance must be stopped before termination of the JVM to ensure proper
  * resource clean-up.
- * 
+ *
  * @author unattributed
  */
 public class MulticastProtocolListener extends MulticastListener implements ProtocolListener {
-    
+
     private static final Logger logger = new NiFiLog(LoggerFactory.getLogger(MulticastProtocolListener.class));
 
     // immutable members
@@ -74,7 +74,7 @@ public class MulticastProtocolListener extends MulticastListener implements Prot
             final ProtocolContext<ProtocolMessage> protocolContext) {
 
         super(numThreads, multicastAddress, configuration);
-        
+
         if (protocolContext == null) {
             throw new IllegalArgumentException("Protocol Context may not be null.");
         }
@@ -89,21 +89,21 @@ public class MulticastProtocolListener extends MulticastListener implements Prot
     @Override
     public void start() throws IOException {
 
-        if(super.isRunning()) {
+        if (super.isRunning()) {
             throw new IllegalStateException("Instance is already started.");
         }
-        
+
         super.start();
-        
+
     }
 
     @Override
     public void stop() throws IOException {
 
-        if(super.isRunning() == false) {
+        if (super.isRunning() == false) {
             throw new IllegalStateException("Instance is already stopped.");
         }
-        
+
         // shutdown listener
         super.stop();
 
@@ -116,17 +116,17 @@ public class MulticastProtocolListener extends MulticastListener implements Prot
 
     @Override
     public void addHandler(final ProtocolHandler handler) {
-        if(handler == null) {
+        if (handler == null) {
             throw new NullPointerException("Protocol handler may not be null.");
         }
         handlers.add(handler);
     }
-    
+
     @Override
     public boolean removeHandler(final ProtocolHandler handler) {
         return handlers.remove(handler);
     }
-    
+
     @Override
     public void dispatchRequest(final MulticastSocket multicastSocket, final DatagramPacket packet) {
 
@@ -138,10 +138,10 @@ public class MulticastProtocolListener extends MulticastListener implements Prot
 
             // unwrap multicast message, if necessary
             final ProtocolMessage unwrappedRequest;
-            if(request instanceof MulticastProtocolMessage) {
+            if (request instanceof MulticastProtocolMessage) {
                 final MulticastProtocolMessage multicastRequest = (MulticastProtocolMessage) request;
                 // don't process a message we sent
-                if(listenerId.equals(multicastRequest.getId())) {
+                if (listenerId.equals(multicastRequest.getId())) {
                     return;
                 } else {
                     unwrappedRequest = multicastRequest.getProtocolMessage();
@@ -149,7 +149,7 @@ public class MulticastProtocolListener extends MulticastListener implements Prot
             } else {
                 unwrappedRequest = request;
             }
-            
+
             // dispatch message to handler
             ProtocolHandler desiredHandler = null;
             for (final ProtocolHandler handler : getHandlers()) {
@@ -164,28 +164,28 @@ public class MulticastProtocolListener extends MulticastListener implements Prot
                 throw new ProtocolException("No handler assigned to handle message type: " + request.getType());
             } else {
                 final ProtocolMessage response = desiredHandler.handle(request);
-                if(response != null) {
+                if (response != null) {
                     try {
-                        
+
                         // wrap with listener id
                         final MulticastProtocolMessage multicastResponse = new MulticastProtocolMessage(listenerId, response);
-                        
+
                         // marshal message
                         final ByteArrayOutputStream baos = new ByteArrayOutputStream();
                         final ProtocolMessageMarshaller<ProtocolMessage> marshaller = protocolContext.createMarshaller();
                         marshaller.marshal(multicastResponse, baos);
                         final byte[] responseBytes = baos.toByteArray();
-                        
+
                         final int maxPacketSizeBytes = getMaxPacketSizeBytes();
-                        if(responseBytes.length > maxPacketSizeBytes) {
-                            logger.warn("Cluster protocol handler '" + desiredHandler.getClass() + 
-                                "' produced a multicast response with length greater than configured max packet size '" + maxPacketSizeBytes + "'");
+                        if (responseBytes.length > maxPacketSizeBytes) {
+                            logger.warn("Cluster protocol handler '" + desiredHandler.getClass()
+                                    + "' produced a multicast response with length greater than configured max packet size '" + maxPacketSizeBytes + "'");
                         }
-                        
+
                         // create and send packet
-                        final DatagramPacket responseDatagram = new DatagramPacket(responseBytes, responseBytes.length, getMulticastAddress().getAddress(), getMulticastAddress().getPort()); 
+                        final DatagramPacket responseDatagram = new DatagramPacket(responseBytes, responseBytes.length, getMulticastAddress().getAddress(), getMulticastAddress().getPort());
                         multicastSocket.send(responseDatagram);
-                        
+
                     } catch (final IOException ioe) {
                         throw new ProtocolException("Failed marshalling protocol message in response to message type: " + request.getType() + " due to: " + ioe, ioe);
                     }
@@ -194,8 +194,8 @@ public class MulticastProtocolListener extends MulticastListener implements Prot
 
         } catch (final Throwable t) {
             logger.warn("Failed processing protocol message due to " + t, t);
-            
-            if ( bulletinRepository != null ) {
+
+            if (bulletinRepository != null) {
                 final Bulletin bulletin = BulletinFactory.createBulletin("Clustering", "WARNING", "Failed to process Protocol Message due to " + t.toString());
                 bulletinRepository.addBulletin(bulletin);
             }


[09/11] incubator-nifi git commit: NIFI-271 checkpoint

Posted by jo...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderImpl.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderImpl.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderImpl.java
index dc86d24..993dea5 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderImpl.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderImpl.java
@@ -41,38 +41,38 @@ import org.apache.nifi.io.socket.SocketUtils;
 import org.apache.nifi.io.socket.multicast.DiscoverableService;
 
 public class NodeProtocolSenderImpl implements NodeProtocolSender {
+
     private final SocketConfiguration socketConfiguration;
     private final ClusterServiceLocator clusterManagerProtocolServiceLocator;
     private final ProtocolContext<ProtocolMessage> protocolContext;
-    
-    public NodeProtocolSenderImpl(final ClusterServiceLocator clusterManagerProtocolServiceLocator, 
+
+    public NodeProtocolSenderImpl(final ClusterServiceLocator clusterManagerProtocolServiceLocator,
             final SocketConfiguration socketConfiguration, final ProtocolContext<ProtocolMessage> protocolContext) {
-        if(clusterManagerProtocolServiceLocator == null) {
+        if (clusterManagerProtocolServiceLocator == null) {
             throw new IllegalArgumentException("Protocol Service Locator may not be null.");
-        } else if(socketConfiguration == null) {
+        } else if (socketConfiguration == null) {
             throw new IllegalArgumentException("Socket configuration may not be null.");
-        } else if(protocolContext == null) {
+        } else if (protocolContext == null) {
             throw new IllegalArgumentException("Protocol Context may not be null.");
         }
-        
+
         this.clusterManagerProtocolServiceLocator = clusterManagerProtocolServiceLocator;
         this.socketConfiguration = socketConfiguration;
         this.protocolContext = protocolContext;
     }
-    
-    
+
     @Override
     public ConnectionResponseMessage requestConnection(final ConnectionRequestMessage msg) throws ProtocolException, UnknownServiceAddressException {
         Socket socket = null;
         try {
             socket = createSocket();
-            
+
             String ncmDn = null;
-            if ( socket instanceof SSLSocket ) {
+            if (socket instanceof SSLSocket) {
                 final SSLSocket sslSocket = (SSLSocket) socket;
                 try {
                     final X509Certificate[] certChains = sslSocket.getSession().getPeerCertificateChain();
-                    if ( certChains != null && certChains.length > 0 ) {
+                    if (certChains != null && certChains.length > 0) {
                         ncmDn = certChains[0].getSubjectDN().getName();
                     }
                 } catch (final ProtocolException pe) {
@@ -81,25 +81,25 @@ public class NodeProtocolSenderImpl implements NodeProtocolSender {
                     throw new ProtocolException(e);
                 }
             }
-            
+
             try {
                 // marshal message to output stream
                 final ProtocolMessageMarshaller<ProtocolMessage> marshaller = protocolContext.createMarshaller();
                 marshaller.marshal(msg, socket.getOutputStream());
-            } catch(final IOException ioe) {
+            } catch (final IOException ioe) {
                 throw new ProtocolException("Failed marshalling '" + msg.getType() + "' protocol message due to: " + ioe, ioe);
-            } 
-            
+            }
+
             final ProtocolMessage response;
             try {
                 // unmarshall response and return
                 final ProtocolMessageUnmarshaller<ProtocolMessage> unmarshaller = protocolContext.createUnmarshaller();
                 response = unmarshaller.unmarshal(socket.getInputStream());
-            } catch(final IOException ioe) {
+            } catch (final IOException ioe) {
                 throw new ProtocolException("Failed unmarshalling '" + MessageType.CONNECTION_RESPONSE + "' protocol message due to: " + ioe, ioe);
-            } 
-            
-            if(MessageType.CONNECTION_RESPONSE == response.getType()) {
+            }
+
+            if (MessageType.CONNECTION_RESPONSE == response.getType()) {
                 final ConnectionResponseMessage connectionResponse = (ConnectionResponseMessage) response;
                 connectionResponse.setClusterManagerDN(ncmDn);
                 return connectionResponse;
@@ -110,8 +110,7 @@ public class NodeProtocolSenderImpl implements NodeProtocolSender {
             SocketUtils.closeQuietly(socket);
         }
     }
-    
-    
+
     @Override
     public void heartbeat(final HeartbeatMessage msg) throws ProtocolException, UnknownServiceAddressException {
         sendProtocolMessage(msg);
@@ -131,22 +130,22 @@ public class NodeProtocolSenderImpl implements NodeProtocolSender {
     public void notifyReconnectionFailure(ReconnectionFailureMessage msg) throws ProtocolException, UnknownServiceAddressException {
         sendProtocolMessage(msg);
     }
-    
+
     private Socket createSocket() {
         // determine the cluster manager's address
-        final DiscoverableService service = clusterManagerProtocolServiceLocator.getService(); 
-        if(service == null) {
+        final DiscoverableService service = clusterManagerProtocolServiceLocator.getService();
+        if (service == null) {
             throw new UnknownServiceAddressException("Cluster Manager's service is not known.  Verify a cluster manager is running.");
         }
-        
+
         try {
             // create a socket
-            return SocketUtils.createSocket(service.getServiceAddress(), socketConfiguration); 
-        } catch(final IOException ioe) {
+            return SocketUtils.createSocket(service.getServiceAddress(), socketConfiguration);
+        } catch (final IOException ioe) {
             throw new ProtocolException("Failed to create socket due to: " + ioe, ioe);
         }
     }
-    
+
     private void sendProtocolMessage(final ProtocolMessage msg) {
         Socket socket = null;
         try {
@@ -156,16 +155,16 @@ public class NodeProtocolSenderImpl implements NodeProtocolSender {
                 // marshal message to output stream
                 final ProtocolMessageMarshaller<ProtocolMessage> marshaller = protocolContext.createMarshaller();
                 marshaller.marshal(msg, socket.getOutputStream());
-            } catch(final IOException ioe) {
+            } catch (final IOException ioe) {
                 throw new ProtocolException("Failed marshalling '" + msg.getType() + "' protocol message due to: " + ioe, ioe);
             }
         } finally {
             SocketUtils.closeQuietly(socket);
         }
     }
-    
+
     public SocketConfiguration getSocketConfiguration() {
         return socketConfiguration;
     }
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderListener.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderListener.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderListener.java
index 4b359f4..2992e38 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderListener.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/NodeProtocolSenderListener.java
@@ -33,14 +33,14 @@ import org.apache.nifi.cluster.protocol.message.ReconnectionFailureMessage;
 import org.apache.nifi.reporting.BulletinRepository;
 
 public class NodeProtocolSenderListener implements NodeProtocolSender, ProtocolListener {
-    
+
     private final NodeProtocolSender sender;
     private final ProtocolListener listener;
-    
+
     public NodeProtocolSenderListener(final NodeProtocolSender sender, final ProtocolListener listener) {
-        if(sender == null) {
+        if (sender == null) {
             throw new IllegalArgumentException("NodeProtocolSender may not be null.");
-        } else if(listener == null) {
+        } else if (listener == null) {
             throw new IllegalArgumentException("ProtocolListener may not be null.");
         }
         this.sender = sender;
@@ -49,7 +49,7 @@ public class NodeProtocolSenderListener implements NodeProtocolSender, ProtocolL
 
     @Override
     public void stop() throws IOException {
-        if(!isRunning()) {
+        if (!isRunning()) {
             throw new IllegalStateException("Instance is already stopped.");
         }
         listener.stop();
@@ -57,7 +57,7 @@ public class NodeProtocolSenderListener implements NodeProtocolSender, ProtocolL
 
     @Override
     public void start() throws IOException {
-        if(isRunning()) {
+        if (isRunning()) {
             throw new IllegalStateException("Instance is already started.");
         }
         listener.start();
@@ -92,12 +92,12 @@ public class NodeProtocolSenderListener implements NodeProtocolSender, ProtocolL
     public ConnectionResponseMessage requestConnection(final ConnectionRequestMessage msg) throws ProtocolException, UnknownServiceAddressException {
         return sender.requestConnection(msg);
     }
-    
+
     @Override
     public void notifyControllerStartupFailure(final ControllerStartupFailureMessage msg) throws ProtocolException, UnknownServiceAddressException {
         sender.notifyControllerStartupFailure(msg);
     }
-    
+
     @Override
     public void notifyReconnectionFailure(final ReconnectionFailureMessage msg) throws ProtocolException, UnknownServiceAddressException {
         sender.notifyReconnectionFailure(msg);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/SocketProtocolListener.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/SocketProtocolListener.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/SocketProtocolListener.java
index ca30d9b..172f459 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/SocketProtocolListener.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/impl/SocketProtocolListener.java
@@ -47,8 +47,8 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * Implements a listener for protocol messages sent over unicast socket. 
- * 
+ * Implements a listener for protocol messages sent over unicast socket.
+ *
  * @author unattributed
  */
 public class SocketProtocolListener extends SocketListener implements ProtocolListener {
@@ -57,7 +57,7 @@ public class SocketProtocolListener extends SocketListener implements ProtocolLi
     private final ProtocolContext<ProtocolMessage> protocolContext;
     private final Collection<ProtocolHandler> handlers = new CopyOnWriteArrayList<>();
     private volatile BulletinRepository bulletinRepository;
-    
+
     public SocketProtocolListener(
             final int numThreads,
             final int port,
@@ -65,11 +65,11 @@ public class SocketProtocolListener extends SocketListener implements ProtocolLi
             final ProtocolContext<ProtocolMessage> protocolContext) {
 
         super(numThreads, port, configuration);
-        
-        if(protocolContext == null) {
+
+        if (protocolContext == null) {
             throw new IllegalArgumentException("Protocol Context may not be null.");
         }
-        
+
         this.protocolContext = protocolContext;
     }
 
@@ -77,24 +77,24 @@ public class SocketProtocolListener extends SocketListener implements ProtocolLi
     public void setBulletinRepository(final BulletinRepository bulletinRepository) {
         this.bulletinRepository = bulletinRepository;
     }
-    
+
     @Override
     public void start() throws IOException {
 
-        if(super.isRunning()) {
+        if (super.isRunning()) {
             throw new IllegalStateException("Instance is already started.");
         }
-        
+
         super.start();
     }
 
     @Override
     public void stop() throws IOException {
 
-        if(super.isRunning() == false) {
+        if (super.isRunning() == false) {
             throw new IOException("Instance is already stopped.");
         }
-        
+
         super.stop();
 
     }
@@ -106,12 +106,12 @@ public class SocketProtocolListener extends SocketListener implements ProtocolLi
 
     @Override
     public void addHandler(final ProtocolHandler handler) {
-        if(handler == null) {
+        if (handler == null) {
             throw new NullPointerException("Protocol handler may not be null.");
         }
         handlers.add(handler);
     }
-    
+
     @Override
     public boolean removeHandler(final ProtocolHandler handler) {
         return handlers.remove(handler);
@@ -127,13 +127,13 @@ public class SocketProtocolListener extends SocketListener implements ProtocolLi
             hostname = socket.getInetAddress().getHostName();
             final String requestId = UUID.randomUUID().toString();
             logger.info("Received request {} from {}", requestId, hostname);
-            
+
             String requestorDn = null;
-            if ( socket instanceof SSLSocket ) {
+            if (socket instanceof SSLSocket) {
                 final SSLSocket sslSocket = (SSLSocket) socket;
                 try {
                     final X509Certificate[] certChains = sslSocket.getSession().getPeerCertificateChain();
-                    if ( certChains != null && certChains.length > 0 ) {
+                    if (certChains != null && certChains.length > 0) {
                         requestorDn = certChains[0].getSubjectDN().getName();
                     }
                 } catch (final ProtocolException pe) {
@@ -142,22 +142,22 @@ public class SocketProtocolListener extends SocketListener implements ProtocolLi
                     throw new ProtocolException(e);
                 }
             }
-            
+
             // unmarshall message
             final ProtocolMessageUnmarshaller<ProtocolMessage> unmarshaller = protocolContext.createUnmarshaller();
             final InputStream inStream = socket.getInputStream();
             final CopyingInputStream copyingInputStream = new CopyingInputStream(inStream, maxMsgBuffer); // don't copy more than 1 MB
             logger.debug("Request {} has a message length of {}", requestId, copyingInputStream.getNumberOfBytesCopied());
-            
+
             final ProtocolMessage request;
             try {
                 request = unmarshaller.unmarshal(copyingInputStream);
             } finally {
                 receivedMessage = copyingInputStream.getBytesRead();
             }
-            
+
             request.setRequestorDN(requestorDn);
-            
+
             // dispatch message to handler
             ProtocolHandler desiredHandler = null;
             for (final ProtocolHandler handler : getHandlers()) {
@@ -172,10 +172,10 @@ public class SocketProtocolListener extends SocketListener implements ProtocolLi
                 throw new ProtocolException("No handler assigned to handle message type: " + request.getType());
             } else {
                 final ProtocolMessage response = desiredHandler.handle(request);
-                if(response != null) {
+                if (response != null) {
                     try {
                         logger.debug("Sending response for request {}", requestId);
-                            
+
                         // marshal message to output stream
                         final ProtocolMessageMarshaller<ProtocolMessage> marshaller = protocolContext.createMarshaller();
                         marshaller.marshal(response, socket.getOutputStream());
@@ -184,19 +184,19 @@ public class SocketProtocolListener extends SocketListener implements ProtocolLi
                     }
                 }
             }
-            
+
             stopWatch.stop();
             logger.info("Finished processing request {} (type={}, length={} bytes) in {} millis", requestId, request.getType(), receivedMessage.length, stopWatch.getDuration(TimeUnit.MILLISECONDS));
         } catch (final IOException e) {
             logger.warn("Failed processing protocol message from " + hostname + " due to " + e, e);
-            
-            if ( bulletinRepository != null ) {
+
+            if (bulletinRepository != null) {
                 final Bulletin bulletin = BulletinFactory.createBulletin("Clustering", "WARNING", String.format("Failed to process protocol message from %s due to: %s", hostname, e.toString()));
                 bulletinRepository.addBulletin(bulletin);
             }
         } catch (final ProtocolException e) {
             logger.warn("Failed processing protocol message from " + hostname + " due to " + e, e);
-            if ( bulletinRepository != null ) {
+            if (bulletinRepository != null) {
                 final Bulletin bulletin = BulletinFactory.createBulletin("Clustering", "WARNING", String.format("Failed to process protocol message from %s due to: %s", hostname, e.toString()));
                 bulletinRepository.addBulletin(bulletin);
             }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/JaxbProtocolContext.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/JaxbProtocolContext.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/JaxbProtocolContext.java
index bc68630..4d44b4e 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/JaxbProtocolContext.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/JaxbProtocolContext.java
@@ -38,28 +38,27 @@ import org.apache.nifi.cluster.protocol.ProtocolMessageUnmarshaller;
 /**
  * Implements a context for communicating internally amongst the cluster using
  * JAXB.
- * 
+ *
  * @param <T> The type of protocol message.
  *
- * @author unattributed
  */
 public class JaxbProtocolContext<T> implements ProtocolContext {
 
     private static final int BUF_SIZE = (int) Math.pow(2, 10);  // 1k
-    
+
     /*
      * A sentinel is used to detect corrupted messages.  Relying on the integrity
-     * of the message size can cause memory issues if the value is corrupted 
+     * of the message size can cause memory issues if the value is corrupted
      * and equal to a number larger than the memory size.
      */
     private static final byte MESSAGE_PROTOCOL_START_SENTINEL = 0x5A;
-    
+
     private final JAXBContext jaxbCtx;
-    
+
     public JaxbProtocolContext(final JAXBContext jaxbCtx) {
         this.jaxbCtx = jaxbCtx;
     }
-    
+
     @Override
     public ProtocolMessageMarshaller<T> createMarshaller() {
         return new ProtocolMessageMarshaller<T>() {
@@ -78,7 +77,7 @@ public class JaxbProtocolContext<T> implements ProtocolContext {
 
                     // write message protocol sentinel
                     dos.write(MESSAGE_PROTOCOL_START_SENTINEL);
-                    
+
                     // write message size in bytes
                     dos.writeInt(msgBytes.size());
 
@@ -108,14 +107,14 @@ public class JaxbProtocolContext<T> implements ProtocolContext {
 
                     // check for the presence of the message protocol sentinel
                     final byte sentinel = (byte) dis.read();
-                    if ( sentinel == -1 ) {
+                    if (sentinel == -1) {
                         throw new EOFException();
                     }
 
-                    if(MESSAGE_PROTOCOL_START_SENTINEL != sentinel) {
+                    if (MESSAGE_PROTOCOL_START_SENTINEL != sentinel) {
                         throw new IOException("Failed reading protocol message due to malformed header");
                     }
-                    
+
                     // read the message size
                     final int msgBytesSize = dis.readInt();
 

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedConnectionRequest.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedConnectionRequest.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedConnectionRequest.java
index d9de24f..c81c7e0 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedConnectionRequest.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedConnectionRequest.java
@@ -23,10 +23,11 @@ import org.apache.nifi.cluster.protocol.NodeIdentifier;
  * @author unattributed
  */
 public class AdaptedConnectionRequest {
-    
+
     private NodeIdentifier nodeIdentifier;
-    
-    public AdaptedConnectionRequest() {}
+
+    public AdaptedConnectionRequest() {
+    }
 
     @XmlJavaTypeAdapter(NodeIdentifierAdapter.class)
     public NodeIdentifier getNodeIdentifier() {

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedConnectionResponse.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedConnectionResponse.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedConnectionResponse.java
index c7c783b..6c8b49d 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedConnectionResponse.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedConnectionResponse.java
@@ -25,7 +25,7 @@ import org.apache.nifi.cluster.protocol.StandardDataFlow;
  * @author unattributed
  */
 public class AdaptedConnectionResponse {
-    
+
     private StandardDataFlow dataFlow;
     private NodeIdentifier nodeIdentifier;
     private boolean blockedByFirewall;
@@ -34,8 +34,9 @@ public class AdaptedConnectionResponse {
     private Integer managerRemoteInputPort;
     private Boolean managerRemoteCommsSecure;
     private String instanceId;
-    
-    public AdaptedConnectionResponse() {}
+
+    public AdaptedConnectionResponse() {
+    }
 
     @XmlJavaTypeAdapter(DataFlowAdapter.class)
     public StandardDataFlow getDataFlow() {
@@ -82,27 +83,27 @@ public class AdaptedConnectionResponse {
     public boolean shouldTryLater() {
         return tryLaterSeconds > 0;
     }
-    
+
     public void setManagerRemoteInputPort(Integer managerRemoteInputPort) {
         this.managerRemoteInputPort = managerRemoteInputPort;
     }
-    
+
     public Integer getManagerRemoteInputPort() {
         return managerRemoteInputPort;
     }
-    
+
     public void setManagerRemoteCommsSecure(Boolean secure) {
         this.managerRemoteCommsSecure = secure;
     }
-    
+
     public Boolean isManagerRemoteCommsSecure() {
         return managerRemoteCommsSecure;
     }
-    
+
     public void setInstanceId(String instanceId) {
         this.instanceId = instanceId;
     }
-    
+
     public String getInstanceId() {
         return instanceId;
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedCounter.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedCounter.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedCounter.java
index 89d903b..72d716c 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedCounter.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedCounter.java
@@ -20,14 +20,15 @@ package org.apache.nifi.cluster.protocol.jaxb.message;
  * @author unattributed
  */
 public class AdaptedCounter {
-    
+
     private String groupName;
-    
+
     private String name;
-    
+
     private long value;
 
-    public AdaptedCounter() {}
+    public AdaptedCounter() {
+    }
 
     public String getGroupName() {
         return groupName;
@@ -52,5 +53,5 @@ public class AdaptedCounter {
     public void setValue(long value) {
         this.value = value;
     }
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedDataFlow.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedDataFlow.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedDataFlow.java
index bb97619..571d846 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedDataFlow.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedDataFlow.java
@@ -20,14 +20,15 @@ package org.apache.nifi.cluster.protocol.jaxb.message;
  * @author unattributed
  */
 public class AdaptedDataFlow {
-    
+
     private byte[] flow;
     private byte[] templates;
     private byte[] snippets;
-    
+
     private boolean autoStartProcessors;
-    
-    public AdaptedDataFlow() {}
+
+    public AdaptedDataFlow() {
+    }
 
     public byte[] getFlow() {
         return flow;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedHeartbeat.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedHeartbeat.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedHeartbeat.java
index 5b9d9b7..81714f5 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedHeartbeat.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedHeartbeat.java
@@ -23,13 +23,14 @@ import org.apache.nifi.cluster.protocol.NodeIdentifier;
  * @author unattributed
  */
 public class AdaptedHeartbeat {
-    
+
     private NodeIdentifier nodeIdentifier;
     private byte[] payload;
     private boolean primary;
     private boolean connected;
-    
-    public AdaptedHeartbeat() {}
+
+    public AdaptedHeartbeat() {
+    }
 
     @XmlJavaTypeAdapter(NodeIdentifierAdapter.class)
     public NodeIdentifier getNodeIdentifier() {
@@ -39,7 +40,7 @@ public class AdaptedHeartbeat {
     public void setNodeIdentifier(NodeIdentifier nodeIdentifier) {
         this.nodeIdentifier = nodeIdentifier;
     }
-    
+
     public boolean isPrimary() {
         return primary;
     }
@@ -51,11 +52,11 @@ public class AdaptedHeartbeat {
     public boolean isConnected() {
         return connected;
     }
-    
+
     public void setConnected(boolean connected) {
         this.connected = connected;
     }
-    
+
     public byte[] getPayload() {
         return payload;
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedNodeBulletins.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedNodeBulletins.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedNodeBulletins.java
index 98e2438..d9f3577 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedNodeBulletins.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedNodeBulletins.java
@@ -23,12 +23,13 @@ import org.apache.nifi.cluster.protocol.NodeIdentifier;
  * @author unattributed
  */
 public class AdaptedNodeBulletins {
-    
+
     private NodeIdentifier nodeIdentifier;
-    
+
     private byte[] payload;
-    
-    public AdaptedNodeBulletins() {}
+
+    public AdaptedNodeBulletins() {
+    }
 
     @XmlJavaTypeAdapter(NodeIdentifierAdapter.class)
     public NodeIdentifier getNodeIdentifier() {
@@ -38,7 +39,7 @@ public class AdaptedNodeBulletins {
     public void setNodeIdentifier(NodeIdentifier nodeIdentifier) {
         this.nodeIdentifier = nodeIdentifier;
     }
-    
+
     public byte[] getPayload() {
         return payload;
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedNodeIdentifier.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedNodeIdentifier.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedNodeIdentifier.java
index 8134ea3..8d0eddd 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedNodeIdentifier.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/AdaptedNodeIdentifier.java
@@ -20,18 +20,19 @@ package org.apache.nifi.cluster.protocol.jaxb.message;
  * @author unattributed
  */
 public class AdaptedNodeIdentifier {
-    
+
     private String id;
-    
+
     private String apiAddress;
 
-    private int apiPort;    
+    private int apiPort;
 
     private String socketAddress;
-    
+
     private int socketPort;
-    
-    public AdaptedNodeIdentifier() {}
+
+    public AdaptedNodeIdentifier() {
+    }
 
     public String getApiAddress() {
         return apiAddress;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ConnectionRequestAdapter.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ConnectionRequestAdapter.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ConnectionRequestAdapter.java
index 1f91cf1..37256a3 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ConnectionRequestAdapter.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ConnectionRequestAdapter.java
@@ -27,7 +27,7 @@ public class ConnectionRequestAdapter extends XmlAdapter<AdaptedConnectionReques
     @Override
     public AdaptedConnectionRequest marshal(final ConnectionRequest cr) {
         final AdaptedConnectionRequest aCr = new AdaptedConnectionRequest();
-        if(cr != null) {
+        if (cr != null) {
             aCr.setNodeIdentifier(cr.getProposedNodeIdentifier());
         }
         return aCr;
@@ -37,5 +37,5 @@ public class ConnectionRequestAdapter extends XmlAdapter<AdaptedConnectionReques
     public ConnectionRequest unmarshal(final AdaptedConnectionRequest aCr) {
         return new ConnectionRequest(aCr.getNodeIdentifier());
     }
- 
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ConnectionResponseAdapter.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ConnectionResponseAdapter.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ConnectionResponseAdapter.java
index 143bab0..633f81a 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ConnectionResponseAdapter.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ConnectionResponseAdapter.java
@@ -27,7 +27,7 @@ public class ConnectionResponseAdapter extends XmlAdapter<AdaptedConnectionRespo
     @Override
     public AdaptedConnectionResponse marshal(final ConnectionResponse cr) {
         final AdaptedConnectionResponse aCr = new AdaptedConnectionResponse();
-        if(cr != null) {
+        if (cr != null) {
             aCr.setDataFlow(cr.getDataFlow());
             aCr.setNodeIdentifier(cr.getNodeIdentifier());
             aCr.setTryLaterSeconds(cr.getTryLaterSeconds());
@@ -42,14 +42,14 @@ public class ConnectionResponseAdapter extends XmlAdapter<AdaptedConnectionRespo
 
     @Override
     public ConnectionResponse unmarshal(final AdaptedConnectionResponse aCr) {
-        if(aCr.shouldTryLater()) {
+        if (aCr.shouldTryLater()) {
             return new ConnectionResponse(aCr.getTryLaterSeconds());
-        } else if(aCr.isBlockedByFirewall()) {
+        } else if (aCr.isBlockedByFirewall()) {
             return ConnectionResponse.createBlockedByFirewallResponse();
         } else {
-            return new ConnectionResponse(aCr.getNodeIdentifier(), aCr.getDataFlow(), aCr.isPrimary(), 
-                aCr.getManagerRemoteInputPort(), aCr.isManagerRemoteCommsSecure(), aCr.getInstanceId());
+            return new ConnectionResponse(aCr.getNodeIdentifier(), aCr.getDataFlow(), aCr.isPrimary(),
+                    aCr.getManagerRemoteInputPort(), aCr.isManagerRemoteCommsSecure(), aCr.getInstanceId());
         }
     }
- 
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/DataFlowAdapter.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/DataFlowAdapter.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/DataFlowAdapter.java
index 8d9467f..dbc83b8 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/DataFlowAdapter.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/DataFlowAdapter.java
@@ -27,16 +27,16 @@ public class DataFlowAdapter extends XmlAdapter<AdaptedDataFlow, StandardDataFlo
 
     @Override
     public AdaptedDataFlow marshal(final StandardDataFlow df) {
-        
+
         final AdaptedDataFlow aDf = new AdaptedDataFlow();
-        
-        if(df != null) {
+
+        if (df != null) {
             aDf.setFlow(df.getFlow());
             aDf.setTemplates(df.getTemplates());
             aDf.setSnippets(df.getSnippets());
             aDf.setAutoStartProcessors(df.isAutoStartProcessors());
         }
-        
+
         return aDf;
     }
 
@@ -46,5 +46,5 @@ public class DataFlowAdapter extends XmlAdapter<AdaptedDataFlow, StandardDataFlo
         dataFlow.setAutoStartProcessors(aDf.isAutoStartProcessors());
         return dataFlow;
     }
- 
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/HeartbeatAdapter.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/HeartbeatAdapter.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/HeartbeatAdapter.java
index 0e073b6..989d827 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/HeartbeatAdapter.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/HeartbeatAdapter.java
@@ -26,23 +26,23 @@ public class HeartbeatAdapter extends XmlAdapter<AdaptedHeartbeat, Heartbeat> {
 
     @Override
     public AdaptedHeartbeat marshal(final Heartbeat hb) {
-        
+
         final AdaptedHeartbeat aHb = new AdaptedHeartbeat();
-        
-        if(hb != null) {
+
+        if (hb != null) {
             // set node identifier
             aHb.setNodeIdentifier(hb.getNodeIdentifier());
 
             // set payload
             aHb.setPayload(hb.getPayload());
-            
+
             // set leader flag
             aHb.setPrimary(hb.isPrimary());
-            
+
             // set connected flag
             aHb.setConnected(hb.isConnected());
         }
-        
+
         return aHb;
     }
 
@@ -50,5 +50,5 @@ public class HeartbeatAdapter extends XmlAdapter<AdaptedHeartbeat, Heartbeat> {
     public Heartbeat unmarshal(final AdaptedHeartbeat aHb) {
         return new Heartbeat(aHb.getNodeIdentifier(), aHb.isPrimary(), aHb.isConnected(), aHb.getPayload());
     }
- 
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/JaxbProtocolUtils.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/JaxbProtocolUtils.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/JaxbProtocolUtils.java
index c3a57f5..565882d 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/JaxbProtocolUtils.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/JaxbProtocolUtils.java
@@ -23,11 +23,11 @@ import javax.xml.bind.JAXBException;
  * @author unattributed
  */
 public final class JaxbProtocolUtils {
-    
+
     public static final String JAXB_CONTEXT_PATH = ObjectFactory.class.getPackage().getName();
 
     public static final JAXBContext JAXB_CONTEXT = initializeJaxbContext();
-    
+
     /**
      * Load the JAXBContext version.
      */
@@ -38,5 +38,5 @@ public final class JaxbProtocolUtils {
             throw new RuntimeException("Unable to create JAXBContext.", e);
         }
     }
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/NodeBulletinsAdapter.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/NodeBulletinsAdapter.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/NodeBulletinsAdapter.java
index 1ae41f7..859d8b7 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/NodeBulletinsAdapter.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/NodeBulletinsAdapter.java
@@ -26,17 +26,17 @@ public class NodeBulletinsAdapter extends XmlAdapter<AdaptedNodeBulletins, NodeB
 
     @Override
     public AdaptedNodeBulletins marshal(final NodeBulletins hb) {
-        
+
         final AdaptedNodeBulletins adaptedBulletins = new AdaptedNodeBulletins();
-        
-        if(hb != null) {
+
+        if (hb != null) {
             // set node identifier
             adaptedBulletins.setNodeIdentifier(hb.getNodeIdentifier());
 
             // set payload
             adaptedBulletins.setPayload(hb.getPayload());
         }
-        
+
         return adaptedBulletins;
     }
 
@@ -44,5 +44,5 @@ public class NodeBulletinsAdapter extends XmlAdapter<AdaptedNodeBulletins, NodeB
     public NodeBulletins unmarshal(final AdaptedNodeBulletins adaptedBulletins) {
         return new NodeBulletins(adaptedBulletins.getNodeIdentifier(), adaptedBulletins.getPayload());
     }
- 
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/NodeIdentifierAdapter.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/NodeIdentifierAdapter.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/NodeIdentifierAdapter.java
index fe2d8a4..7594266 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/NodeIdentifierAdapter.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/NodeIdentifierAdapter.java
@@ -26,7 +26,7 @@ public class NodeIdentifierAdapter extends XmlAdapter<AdaptedNodeIdentifier, Nod
 
     @Override
     public AdaptedNodeIdentifier marshal(final NodeIdentifier ni) {
-        if(ni == null) {
+        if (ni == null) {
             return null;
         } else {
             final AdaptedNodeIdentifier aNi = new AdaptedNodeIdentifier();
@@ -41,11 +41,11 @@ public class NodeIdentifierAdapter extends XmlAdapter<AdaptedNodeIdentifier, Nod
 
     @Override
     public NodeIdentifier unmarshal(final AdaptedNodeIdentifier aNi) {
-        if(aNi == null) {
+        if (aNi == null) {
             return null;
         } else {
             return new NodeIdentifier(aNi.getId(), aNi.getApiAddress(), aNi.getApiPort(), aNi.getSocketAddress(), aNi.getSocketPort());
         }
     }
- 
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ObjectFactory.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ObjectFactory.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ObjectFactory.java
index 1613536..89956c1 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ObjectFactory.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/jaxb/message/ObjectFactory.java
@@ -39,65 +39,66 @@ import org.apache.nifi.cluster.protocol.message.ServiceBroadcastMessage;
  */
 @XmlRegistry
 public class ObjectFactory {
-    
-    public ObjectFactory() {}
-    
+
+    public ObjectFactory() {
+    }
+
     public ReconnectionRequestMessage createReconnectionRequestMessage() {
         return new ReconnectionRequestMessage();
     }
-    
+
     public ReconnectionFailureMessage createReconnectionFailureMessage() {
         return new ReconnectionFailureMessage();
     }
-    
+
     public ReconnectionResponseMessage createReconnectionResponseMessage() {
         return new ReconnectionResponseMessage();
     }
-    
+
     public DisconnectMessage createDisconnectionMessage() {
         return new DisconnectMessage();
     }
-    
+
     public ConnectionRequestMessage createConnectionRequestMessage() {
         return new ConnectionRequestMessage();
     }
-    
+
     public ConnectionResponseMessage createConnectionResponseMessage() {
         return new ConnectionResponseMessage();
     }
-    
+
     public ServiceBroadcastMessage createServiceBroadcastMessage() {
         return new ServiceBroadcastMessage();
     }
-    
+
     public HeartbeatMessage createHeartbeatMessage() {
         return new HeartbeatMessage();
     }
-    
+
     public FlowRequestMessage createFlowRequestMessage() {
         return new FlowRequestMessage();
     }
-    
+
     public FlowResponseMessage createFlowResponseMessage() {
         return new FlowResponseMessage();
     }
-    
+
     public PingMessage createPingMessage() {
         return new PingMessage();
     }
-    
+
     public MulticastProtocolMessage createMulticastProtocolMessage() {
         return new MulticastProtocolMessage();
     }
-    
+
     public ControllerStartupFailureMessage createControllerStartupFailureMessage() {
         return new ControllerStartupFailureMessage();
     }
-    
+
     public PrimaryRoleAssignmentMessage createPrimaryRoleAssignmentMessage() {
         return new PrimaryRoleAssignmentMessage();
     }
-    
+
     public NodeBulletinsMessage createBulletinsMessage() {
         return new NodeBulletinsMessage();
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ConnectionRequestMessage.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ConnectionRequestMessage.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ConnectionRequestMessage.java
index 344de4e..09c03f1 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ConnectionRequestMessage.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ConnectionRequestMessage.java
@@ -25,11 +25,12 @@ import org.apache.nifi.cluster.protocol.ConnectionRequest;
  */
 @XmlRootElement(name = "connectionRequestMessage")
 public class ConnectionRequestMessage extends ProtocolMessage {
-    
+
     private ConnectionRequest connectionRequest;
-    
-    public ConnectionRequestMessage() {}
-    
+
+    public ConnectionRequestMessage() {
+    }
+
     public ConnectionRequest getConnectionRequest() {
         return connectionRequest;
     }
@@ -37,7 +38,7 @@ public class ConnectionRequestMessage extends ProtocolMessage {
     public void setConnectionRequest(ConnectionRequest connectionRequest) {
         this.connectionRequest = connectionRequest;
     }
-    
+
     @Override
     public MessageType getType() {
         return MessageType.CONNECTION_REQUEST;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ConnectionResponseMessage.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ConnectionResponseMessage.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ConnectionResponseMessage.java
index a262d7a..0f72dd6 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ConnectionResponseMessage.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ConnectionResponseMessage.java
@@ -19,16 +19,14 @@ package org.apache.nifi.cluster.protocol.message;
 import javax.xml.bind.annotation.XmlRootElement;
 import org.apache.nifi.cluster.protocol.ConnectionResponse;
 
-/**
- * @author unattributed
- */
 @XmlRootElement(name = "connectionResponseMessage")
 public class ConnectionResponseMessage extends ProtocolMessage {
-    
+
     private ConnectionResponse connectionResponse;
     private String clusterManagerDN;
-    
-    public ConnectionResponseMessage() {}
+
+    public ConnectionResponseMessage() {
+    }
 
     public ConnectionResponse getConnectionResponse() {
         return connectionResponse;
@@ -36,23 +34,22 @@ public class ConnectionResponseMessage extends ProtocolMessage {
 
     public void setConnectionResponse(final ConnectionResponse connectionResponse) {
         this.connectionResponse = connectionResponse;
-        
-        if ( clusterManagerDN != null ) {
+
+        if (clusterManagerDN != null) {
             this.connectionResponse.setClusterManagerDN(clusterManagerDN);
         }
     }
-    
+
     public void setClusterManagerDN(final String dn) {
-        if ( connectionResponse != null ) {
+        if (connectionResponse != null) {
             connectionResponse.setClusterManagerDN(dn);
         }
         this.clusterManagerDN = dn;
     }
-    
+
     /**
-     * Returns the DN of the NCM, if it is available or <code>null</code> otherwise.
-     * 
-     * @return
+     * @return the DN of the NCM, if it is available or <code>null</code>
+     * otherwise
      */
     public String getClusterManagerDN() {
         return clusterManagerDN;
@@ -62,5 +59,5 @@ public class ConnectionResponseMessage extends ProtocolMessage {
     public MessageType getType() {
         return MessageType.CONNECTION_RESPONSE;
     }
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ControllerStartupFailureMessage.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ControllerStartupFailureMessage.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ControllerStartupFailureMessage.java
index ebc1cae..4ac9275 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ControllerStartupFailureMessage.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ControllerStartupFailureMessage.java
@@ -29,9 +29,10 @@ import org.apache.nifi.cluster.protocol.jaxb.message.NodeIdentifierAdapter;
 public class ControllerStartupFailureMessage extends ExceptionMessage {
 
     private NodeIdentifier nodeId;
-    
-    public ControllerStartupFailureMessage() {}
-    
+
+    public ControllerStartupFailureMessage() {
+    }
+
     @Override
     public MessageType getType() {
         return MessageType.CONTROLLER_STARTUP_FAILURE;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/DisconnectMessage.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/DisconnectMessage.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/DisconnectMessage.java
index 8aa7a40..7665274 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/DisconnectMessage.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/DisconnectMessage.java
@@ -26,10 +26,10 @@ import org.apache.nifi.cluster.protocol.jaxb.message.NodeIdentifierAdapter;
  */
 @XmlRootElement(name = "disconnectionMessage")
 public class DisconnectMessage extends ProtocolMessage {
-    
+
     private NodeIdentifier nodeId;
     private String explanation;
- 
+
     @XmlJavaTypeAdapter(NodeIdentifierAdapter.class)
     public NodeIdentifier getNodeId() {
         return nodeId;
@@ -46,10 +46,10 @@ public class DisconnectMessage extends ProtocolMessage {
     public void setExplanation(String explanation) {
         this.explanation = explanation;
     }
-    
+
     @Override
     public MessageType getType() {
         return MessageType.DISCONNECTION_REQUEST;
     }
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ExceptionMessage.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ExceptionMessage.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ExceptionMessage.java
index 99a6dee..dbc7bc1 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ExceptionMessage.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ExceptionMessage.java
@@ -23,10 +23,11 @@ import javax.xml.bind.annotation.XmlRootElement;
  */
 @XmlRootElement(name = "exceptionMessage")
 public class ExceptionMessage extends ProtocolMessage {
-    
+
     private String exceptionMessage;
 
-    public ExceptionMessage() {}
+    public ExceptionMessage() {
+    }
 
     public String getExceptionMessage() {
         return exceptionMessage;
@@ -35,10 +36,10 @@ public class ExceptionMessage extends ProtocolMessage {
     public void setExceptionMessage(String exceptionMessage) {
         this.exceptionMessage = exceptionMessage;
     }
-    
+
     @Override
     public MessageType getType() {
         return MessageType.EXCEPTION;
     }
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/FlowRequestMessage.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/FlowRequestMessage.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/FlowRequestMessage.java
index 4a10538..f72e270 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/FlowRequestMessage.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/FlowRequestMessage.java
@@ -26,7 +26,7 @@ import org.apache.nifi.cluster.protocol.jaxb.message.NodeIdentifierAdapter;
  */
 @XmlRootElement(name = "flowRequestMessage")
 public class FlowRequestMessage extends ProtocolMessage {
-    
+
     private NodeIdentifier nodeId;
 
     @XmlJavaTypeAdapter(NodeIdentifierAdapter.class)
@@ -37,10 +37,10 @@ public class FlowRequestMessage extends ProtocolMessage {
     public void setNodeId(NodeIdentifier nodeId) {
         this.nodeId = nodeId;
     }
-    
+
     @Override
     public MessageType getType() {
         return MessageType.FLOW_REQUEST;
     }
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/FlowResponseMessage.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/FlowResponseMessage.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/FlowResponseMessage.java
index 0d34dae..cc0538c 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/FlowResponseMessage.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/FlowResponseMessage.java
@@ -25,9 +25,9 @@ import org.apache.nifi.cluster.protocol.StandardDataFlow;
  */
 @XmlRootElement(name = "flowResponseMessage")
 public class FlowResponseMessage extends ProtocolMessage {
-    
+
     private StandardDataFlow dataFlow;
-    
+
     @Override
     public MessageType getType() {
         return MessageType.FLOW_RESPONSE;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/HeartbeatMessage.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/HeartbeatMessage.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/HeartbeatMessage.java
index 0064cb6..05f40ac 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/HeartbeatMessage.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/HeartbeatMessage.java
@@ -24,9 +24,9 @@ import javax.xml.bind.annotation.XmlRootElement;
  */
 @XmlRootElement(name = "heartbeatMessage")
 public class HeartbeatMessage extends ProtocolMessage {
-    
+
     private Heartbeat heartbeat;
-    
+
     @Override
     public MessageType getType() {
         return MessageType.HEARTBEAT;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/MulticastProtocolMessage.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/MulticastProtocolMessage.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/MulticastProtocolMessage.java
index c6d2d44..83c284c 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/MulticastProtocolMessage.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/MulticastProtocolMessage.java
@@ -20,28 +20,29 @@ import javax.xml.bind.annotation.XmlRootElement;
 
 /**
  * Wraps a protocol message and an identifier for sending the message by way
- * multicast.  The identifier is necessary for the sender to identify a message
+ * multicast. The identifier is necessary for the sender to identify a message
  * sent by it.
- * 
+ *
  * @author unattributed
  */
 @XmlRootElement(name = "multicastMessage")
 public class MulticastProtocolMessage extends ProtocolMessage {
-    
+
     private ProtocolMessage protocolMessage;
-    
+
     private String id;
-    
-    public MulticastProtocolMessage() {}
+
+    public MulticastProtocolMessage() {
+    }
 
     public MulticastProtocolMessage(final String id, final ProtocolMessage protocolMessage) {
         this.protocolMessage = protocolMessage;
         this.id = id;
     }
-    
+
     @Override
     public MessageType getType() {
-        if(protocolMessage == null) {
+        if (protocolMessage == null) {
             return null;
         }
         return protocolMessage.getType();

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/NodeBulletinsMessage.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/NodeBulletinsMessage.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/NodeBulletinsMessage.java
index 9237a92..45e4dba 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/NodeBulletinsMessage.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/NodeBulletinsMessage.java
@@ -24,9 +24,9 @@ import javax.xml.bind.annotation.XmlRootElement;
  */
 @XmlRootElement(name = "nodeBulletinsMessage")
 public class NodeBulletinsMessage extends ProtocolMessage {
-    
+
     private NodeBulletins bulletins;
-    
+
     @Override
     public MessageType getType() {
         return MessageType.BULLETINS;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/PingMessage.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/PingMessage.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/PingMessage.java
index ee38deb..c9cb39f 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/PingMessage.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/PingMessage.java
@@ -24,13 +24,14 @@ import javax.xml.bind.annotation.XmlRootElement;
  */
 @XmlRootElement(name = "pingMessage")
 public class PingMessage extends ProtocolMessage {
-    
+
     private String id;
-    
+
     private Date date = new Date();
 
-    public PingMessage() {}
-    
+    public PingMessage() {
+    }
+
     public Date getDate() {
         return date;
     }
@@ -46,10 +47,10 @@ public class PingMessage extends ProtocolMessage {
     public void setId(String id) {
         this.id = id;
     }
-    
+
     @Override
     public MessageType getType() {
         return MessageType.PING;
     }
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/PrimaryRoleAssignmentMessage.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/PrimaryRoleAssignmentMessage.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/PrimaryRoleAssignmentMessage.java
index a289abc..db11f92 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/PrimaryRoleAssignmentMessage.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/PrimaryRoleAssignmentMessage.java
@@ -30,7 +30,7 @@ public class PrimaryRoleAssignmentMessage extends ProtocolMessage {
     private NodeIdentifier nodeId;
 
     private boolean primary;
-    
+
     @XmlJavaTypeAdapter(NodeIdentifierAdapter.class)
     public NodeIdentifier getNodeId() {
         return nodeId;
@@ -47,7 +47,7 @@ public class PrimaryRoleAssignmentMessage extends ProtocolMessage {
     public void setPrimary(boolean primary) {
         this.primary = primary;
     }
-   
+
     @Override
     public MessageType getType() {
         return MessageType.PRIMARY_ROLE;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ProtocolMessage.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ProtocolMessage.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ProtocolMessage.java
index 6bf2a13..c6f7ce0 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ProtocolMessage.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ProtocolMessage.java
@@ -16,13 +16,12 @@
  */
 package org.apache.nifi.cluster.protocol.message;
 
-/**
- * @author unattributed
- */
 public abstract class ProtocolMessage {
+
     private volatile String requestorDN;
-    
+
     public static enum MessageType {
+
         BULLETINS,
         CONNECTION_REQUEST,
         CONNECTION_RESPONSE,
@@ -39,23 +38,24 @@ public abstract class ProtocolMessage {
         RECONNECTION_RESPONSE,
         SERVICE_BROADCAST,
     }
-    
+
     public abstract MessageType getType();
-    
+
     /**
      * Sets the DN of the entity making the request
-     * @param dn
+     *
+     * @param dn dn of the entity making the request
      */
     public void setRequestorDN(final String dn) {
         this.requestorDN = dn;
     }
-    
+
     /**
-     * Returns the DN of the entity that made the request, if using a secure socket. Otherwise, returns <code>null</code>
-     * @return
+     * @return the DN of the entity that made the request, if using a secure
+     * socket. Otherwise, returns <code>null</code>
      */
     public String getRequestorDN() {
         return requestorDN;
     }
-    
+
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionFailureMessage.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionFailureMessage.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionFailureMessage.java
index ba45e28..ce62c5b 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionFailureMessage.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionFailureMessage.java
@@ -24,10 +24,12 @@ import org.apache.nifi.cluster.protocol.jaxb.message.NodeIdentifierAdapter;
 
 @XmlRootElement(name = "reconnectionFailureMessage")
 public class ReconnectionFailureMessage extends ExceptionMessage {
+
     private NodeIdentifier nodeId;
-    
-    public ReconnectionFailureMessage() {}
-    
+
+    public ReconnectionFailureMessage() {
+    }
+
     @Override
     public MessageType getType() {
         return MessageType.RECONNECTION_FAILURE;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionRequestMessage.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionRequestMessage.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionRequestMessage.java
index eab3d5d..6d67d21 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionRequestMessage.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionRequestMessage.java
@@ -35,8 +35,9 @@ public class ReconnectionRequestMessage extends ProtocolMessage {
     private Integer managerRemoteSiteListeningPort;
     private Boolean managerRemoteSiteCommsSecure;
     private String instanceId;
-    
-    public ReconnectionRequestMessage() {}
+
+    public ReconnectionRequestMessage() {
+    }
 
     @XmlJavaTypeAdapter(NodeIdentifierAdapter.class)
     public NodeIdentifier getNodeId() {
@@ -62,32 +63,32 @@ public class ReconnectionRequestMessage extends ProtocolMessage {
     public void setPrimary(boolean primary) {
         this.primary = primary;
     }
-    
+
     @Override
     public MessageType getType() {
         return MessageType.RECONNECTION_REQUEST;
     }
-    
+
     public void setManagerRemoteSiteListeningPort(final Integer listeningPort) {
         this.managerRemoteSiteListeningPort = listeningPort;
     }
-    
+
     public Integer getManagerRemoteSiteListeningPort() {
         return managerRemoteSiteListeningPort;
     }
-    
+
     public void setManagerRemoteSiteCommsSecure(final Boolean remoteSiteCommsSecure) {
         this.managerRemoteSiteCommsSecure = remoteSiteCommsSecure;
     }
-    
+
     public Boolean isManagerRemoteSiteCommsSecure() {
         return managerRemoteSiteCommsSecure;
     }
-    
+
     public void setInstanceId(final String instanceId) {
         this.instanceId = instanceId;
     }
-    
+
     public String getInstanceId() {
         return instanceId;
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionResponseMessage.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionResponseMessage.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionResponseMessage.java
index fd0f921..10ed7f6 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionResponseMessage.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ReconnectionResponseMessage.java
@@ -29,4 +29,4 @@ public class ReconnectionResponseMessage extends ProtocolMessage {
         return MessageType.RECONNECTION_RESPONSE;
     }
 
-}
\ No newline at end of file
+}

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ServiceBroadcastMessage.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ServiceBroadcastMessage.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ServiceBroadcastMessage.java
index 92708ba..113b719 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ServiceBroadcastMessage.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/message/ServiceBroadcastMessage.java
@@ -25,12 +25,13 @@ import javax.xml.bind.annotation.XmlRootElement;
 public class ServiceBroadcastMessage extends ProtocolMessage {
 
     private String serviceName;
-    
+
     private String address;
-    
+
     private int port;
-    
-    public ServiceBroadcastMessage() {}
+
+    public ServiceBroadcastMessage() {
+    }
 
     public String getServiceName() {
         return serviceName;

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/spring/MulticastConfigurationFactoryBean.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/spring/MulticastConfigurationFactoryBean.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/spring/MulticastConfigurationFactoryBean.java
index fa201bb..460d3bc 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/spring/MulticastConfigurationFactoryBean.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/spring/MulticastConfigurationFactoryBean.java
@@ -24,18 +24,18 @@ import org.apache.nifi.util.NiFiProperties;
 import org.springframework.beans.factory.FactoryBean;
 
 /**
- * Factory bean for creating a singleton MulticastConfiguration instance.  
+ * Factory bean for creating a singleton MulticastConfiguration instance.
  */
 public class MulticastConfigurationFactoryBean implements FactoryBean {
-    
+
     private MulticastConfiguration configuration;
     private NiFiProperties properties;
-    
+
     @Override
     public Object getObject() throws Exception {
-        if(configuration == null) {
+        if (configuration == null) {
             configuration = new MulticastConfiguration();
-            
+
             final int timeout = (int) FormatUtils.getTimeDuration(properties.getClusterProtocolSocketTimeout(), TimeUnit.MILLISECONDS);
             configuration.setSocketTimeout(timeout);
             configuration.setReuseAddress(true);
@@ -53,7 +53,7 @@ public class MulticastConfigurationFactoryBean implements FactoryBean {
     public boolean isSingleton() {
         return true;
     }
-    
+
     public void setProperties(NiFiProperties properties) {
         this.properties = properties;
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/spring/ServerSocketConfigurationFactoryBean.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/spring/ServerSocketConfigurationFactoryBean.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/spring/ServerSocketConfigurationFactoryBean.java
index 5b5816d..c41aeff 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/spring/ServerSocketConfigurationFactoryBean.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/spring/ServerSocketConfigurationFactoryBean.java
@@ -26,22 +26,23 @@ import org.apache.nifi.util.NiFiProperties;
 import org.springframework.beans.factory.FactoryBean;
 
 /**
- * Factory bean for creating a singleton ServerSocketConfiguration instance.  
+ * Factory bean for creating a singleton ServerSocketConfiguration instance.
  */
 public class ServerSocketConfigurationFactoryBean implements FactoryBean<ServerSocketConfiguration> {
+
     private ServerSocketConfiguration configuration;
     private NiFiProperties properties;
-    
+
     @Override
     public ServerSocketConfiguration getObject() throws Exception {
-        if(configuration == null) {
+        if (configuration == null) {
             configuration = new ServerSocketConfiguration();
             configuration.setNeedClientAuth(properties.getNeedClientAuth());
-            
+
             final int timeout = (int) FormatUtils.getTimeDuration(properties.getClusterProtocolSocketTimeout(), TimeUnit.MILLISECONDS);
             configuration.setSocketTimeout(timeout);
             configuration.setReuseAddress(true);
-            if(Boolean.valueOf(properties.getProperty(NiFiProperties.CLUSTER_PROTOCOL_IS_SECURE))) {
+            if (Boolean.valueOf(properties.getProperty(NiFiProperties.CLUSTER_PROTOCOL_IS_SECURE))) {
                 configuration.setSSLContextFactory(new SSLContextFactory(properties));
             }
         }
@@ -58,7 +59,7 @@ public class ServerSocketConfigurationFactoryBean implements FactoryBean<ServerS
     public boolean isSingleton() {
         return true;
     }
-    
+
     public void setProperties(NiFiProperties properties) {
         this.properties = properties;
     }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/888254b2/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/spring/SocketConfigurationFactoryBean.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/spring/SocketConfigurationFactoryBean.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/spring/SocketConfigurationFactoryBean.java
index b438e44..d3fe42c 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/spring/SocketConfigurationFactoryBean.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/protocol/spring/SocketConfigurationFactoryBean.java
@@ -26,23 +26,23 @@ import org.apache.nifi.util.NiFiProperties;
 import org.springframework.beans.factory.FactoryBean;
 
 /**
- * Factory bean for creating a singleton SocketConfiguration instance.  
+ * Factory bean for creating a singleton SocketConfiguration instance.
  */
 public class SocketConfigurationFactoryBean implements FactoryBean<SocketConfiguration> {
-    
+
     private SocketConfiguration configuration;
-    
+
     private NiFiProperties properties;
-    
+
     @Override
     public SocketConfiguration getObject() throws Exception {
-        if(configuration == null) {
+        if (configuration == null) {
             configuration = new SocketConfiguration();
-            
+
             final int timeout = (int) FormatUtils.getTimeDuration(properties.getClusterProtocolSocketTimeout(), TimeUnit.MILLISECONDS);
             configuration.setSocketTimeout(timeout);
             configuration.setReuseAddress(true);
-            if(Boolean.valueOf(properties.getProperty(NiFiProperties.CLUSTER_PROTOCOL_IS_SECURE))) {
+            if (Boolean.valueOf(properties.getProperty(NiFiProperties.CLUSTER_PROTOCOL_IS_SECURE))) {
                 configuration.setSSLContextFactory(new SSLContextFactory(properties));
             }
         }
@@ -59,7 +59,7 @@ public class SocketConfigurationFactoryBean implements FactoryBean<SocketConfigu
     public boolean isSingleton() {
         return true;
     }
-    
+
     public void setProperties(NiFiProperties properties) {
         this.properties = properties;
     }