[ 
https://issues.apache.org/jira/browse/NIFI-1526?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15554829#comment-15554829
 ] 

ASF GitHub Bot commented on NIFI-1526:
--------------------------------------

Github user mathiastiberghien commented on the issue:

    https://github.com/apache/nifi/pull/1107
  
    Hello,
    
    Thanks for the comments.
    
    I have a question about unit test: I need to test the method 
createProcessor of the FlowController so I guess I need to update the 
TestFlowController file adding a method that add some dummy processors and 
check the behavior.
    
     
    
    How do I proceed to add my dummy processors class to the system, because 
createProcessor method requires the type and the identifier (which is?)
    
     
    
    I’ve trie to create a dummy class processor and use class.forname method 
but it didn’t work
    
     
    
     
    
    Mathias TIBERGHIEN
    
    CTO
    
    Cell. : +33(0)6 27 58 13 68
    
      
    
    87 Bd Chanzy
    
    93100 Montreuil
    
    France
    
     
    
    Tel : +33(0)1 42 87 16 57
    
    www.code192.com <http://www.code192.com> 
    
     
    
    From: Pierre Villard [mailto:notificati...@github.com] 
    Sent: mercredi 5 octobre 2016 23:11
    To: apache/nifi <n...@noreply.github.com>
    Cc: Mathias Tiberghien <mathias.tibergh...@code192.com>; Author 
<aut...@noreply.github.com>
    Subject: Re: [apache/nifi] origin/NIFI-1526 (#1107)
    
     
    
    @pvillard31 requested changes on this pull request.
    
    Few preliminary stylish remarks.
    I would also love to see some unit tests in nifi-framework-core with dummy 
processors to confirm the good behavior of the annotations.
    In any case, this will be a useful improvement, thanks for contributing!
    
      _____  
    
    In 
nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowController.java
 <https://github.com/apache/nifi/pull/1107#pullrequestreview-3003375> :
    
    > @@ -1059,6 +1060,42 @@ public ProcessorNode createProcessor(final String 
type, String id, final boolean
             final LogRepository logRepository = 
LogRepositoryFactory.getRepository(id);
             
logRepository.addObserver(StandardProcessorNode.BULLETIN_OBSERVER_ID, 
LogLevel.WARN, new ProcessorLogObserver(getBulletinRepository(), procNode));
     
    +        try {
    +
    +            final Class<?> procClass = processor.getClass();
    +            if(procClass.isAnnotationPresent(DefaultSettings.class))
    +            {
    
    There are checkstyle violations to fix:
    
    [WARNING] 
src/main/java/org/apache/nifi/annotation/configuration/DefaultSchedule.java[5] 
(imports) AvoidStarImport: Using the '.*' form of import should be avoided - 
java.lang.annotation.*.
    [WARNING] 
src/main/java/org/apache/nifi/annotation/configuration/DefaultSettings.java[5] 
(imports) AvoidStarImport: Using the '.*' form of import should be avoided - 
java.lang.annotation.*.
    [WARNING] 
src/main/java/org/apache/nifi/controller/FlowController.java[1067:13] (blocks) 
LeftCurly: '{' should be on the previous line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/FlowController.java[1071:17] (blocks) 
RightCurly: '}' should be on the same line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/FlowController.java[1073:17] (blocks) 
LeftCurly: '{' should be on the previous line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/FlowController.java[1079:17] (blocks) 
RightCurly: '}' should be on the same line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/FlowController.java[1081:17] (blocks) 
LeftCurly: '{' should be on the previous line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/FlowController.java[1086:17] (blocks) 
RightCurly: '}' should be on the same line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/FlowController.java[1088:17] (blocks) 
LeftCurly: '{' should be on the previous line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/FlowController.java[1093:9] (blocks) 
RightCurly: '}' should be on the same line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/FlowController.java[1095:9] (blocks) 
LeftCurly: '{' should be on the previous line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/StandardProcessorNode.java[191:9] 
(blocks) LeftCurly: '{' should be on the previous line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/StandardProcessorNode.java[194:13] 
(blocks) LeftCurly: '{' should be on the previous line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/StandardProcessorNode.java[197:17] 
(blocks) LeftCurly: '{' should be on the previous line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/StandardProcessorNode.java[199:17] 
(blocks) RightCurly: '}' should be on the same line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/StandardProcessorNode.java[201:17] 
(blocks) LeftCurly: '{' should be on the previous line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/StandardProcessorNode.java[205:17] 
(blocks) LeftCurly: '{' should be on the previous line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/StandardProcessorNode.java[207:17] 
(blocks) RightCurly: '}' should be on the same line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/StandardProcessorNode.java[209:17] 
(blocks) LeftCurly: '{' should be on the previous line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/StandardProcessorNode.java[214:17] 
(blocks) LeftCurly: '{' should be on the previous line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/StandardProcessorNode.java[216:21] 
(blocks) LeftCurly: '{' should be on the previous line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/StandardProcessorNode.java[218:21] 
(blocks) RightCurly: '}' should be on the same line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/StandardProcessorNode.java[220:21] 
(blocks) LeftCurly: '{' should be on the previous line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/StandardProcessorNode.java[226:9] 
(blocks) RightCurly: '}' should be on the same line.
    [WARNING] 
src/main/java/org/apache/nifi/controller/StandardProcessorNode.java[228:9] 
(blocks) LeftCurly: '{' should be on the previous line.
    
    You can check it by yourself by running:
    
    mvn clean install -Pcontrib-check
      _____  
    
    
    In 
nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardProcessorNode.java
 <https://github.com/apache/nifi/pull/1107#pullrequestreview-3003375> :
    
    > @@ -187,6 +187,50 @@ public StandardProcessorNode(final Processor 
processor, final String uuid,
             }
     
             schedulingStrategy = SchedulingStrategy.TIMER_DRIVEN;
    +        try
    +        {
    +
    +            if(procClass.isAnnotationPresent(DefaultSchedule.class))
    +            {
    +                DefaultSchedule dsc = 
procClass.getAnnotation(DefaultSchedule.class);
    +                try
    +                {
    +                    this.setSchedulingStrategy(dsc.Strategy());
    +                }
    +                catch (Throwable ex)
    +                {
    +                    LOG.error(String.format("Error while setting 
scheduling strategy from DefaultSchedule annotation: %s",ex.getMessage()));
    
    When logging exceptions, you could add the exception as second argument of 
the logging method, this will display the full stacktrace in the logs and that 
can be quite useful.
    
    LOG.error(String.format("Error while setting scheduling strategy from 
DefaultSchedule annotation: %s",ex.getMessage()), ex);
    
    —
    You are receiving this because you authored the thread.
    Reply to this email directly, view it on GitHub 
<https://github.com/apache/nifi/pull/1107#pullrequestreview-3003375> , or mute 
the thread 
<https://github.com/notifications/unsubscribe-auth/AVbS_HsFJ9oa1YH_pr8ZD5dixmaLYNNdks5qxBJqgaJpZM4KO_Hp>
 .  
<https://github.com/notifications/beacon/AVbS_Pasi6KuBQPElhP34edZnUJ83rqZks5qxBJqgaJpZM4KO_Hp.gif>
 
    
    
    
    ---
    L'absence de virus dans ce courrier électronique a été vérifiée par le 
logiciel antivirus Avast.
    https://www.avast.com/antivirus



> Allow components to provide default values for Yield Duration and Run Schedule
> ------------------------------------------------------------------------------
>
>                 Key: NIFI-1526
>                 URL: https://issues.apache.org/jira/browse/NIFI-1526
>             Project: Apache NiFi
>          Issue Type: Improvement
>            Reporter: Bryan Bende
>            Priority: Minor
>
> It would be nice for developers of processors (and maybe reporting tasks and 
> controller services) to be able to specify a default value for Yield duration 
> and Run Schedule.
> Currently Yield defaults to 1 second and Run Schedule defaults to 0 seconds. 
> There may be cases where these are not the best default values and the 
> developer wants to start off with better defaults, still allowing the user to 
> tune as needed.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to