[ https://issues.apache.org/jira/browse/ONAMI-102?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14047061#comment-14047061 ]
Hudson commented on ONAMI-102: ------------------------------ SUCCESS: Integrated in Onami-Lifecycle #468 (See [https://builds.apache.org/job/Onami-Lifecycle/468/]) ONAMI-102 Support for JSR-250 (ash2k: rev 1606431) * /onami/trunk/lifecycle/jsr250 * /onami/trunk/lifecycle/jsr250/pom.xml * /onami/trunk/lifecycle/jsr250/src * /onami/trunk/lifecycle/jsr250/src/main * /onami/trunk/lifecycle/jsr250/src/main/java * /onami/trunk/lifecycle/jsr250/src/main/java/org * /onami/trunk/lifecycle/jsr250/src/main/java/org/apache * /onami/trunk/lifecycle/jsr250/src/main/java/org/apache/onami * /onami/trunk/lifecycle/jsr250/src/main/java/org/apache/onami/lifecycle * /onami/trunk/lifecycle/jsr250/src/main/java/org/apache/onami/lifecycle/jsr250 * /onami/trunk/lifecycle/jsr250/src/main/java/org/apache/onami/lifecycle/jsr250/PostConstructModule.java * /onami/trunk/lifecycle/jsr250/src/main/java/org/apache/onami/lifecycle/jsr250/PreDestroyModule.java * /onami/trunk/lifecycle/pom.xml ONAMI-102 Redesign module API (ash2k: rev 1606430) * /onami/trunk/lifecycle/core/src/main/java/org/apache/onami/lifecycle/core/AbstractBasicStageable.java * /onami/trunk/lifecycle/core/src/main/java/org/apache/onami/lifecycle/core/AbstractMethodTypeListener.java * /onami/trunk/lifecycle/core/src/main/java/org/apache/onami/lifecycle/core/AbstractStageable.java * /onami/trunk/lifecycle/core/src/main/java/org/apache/onami/lifecycle/core/DefaultStager.java * /onami/trunk/lifecycle/core/src/main/java/org/apache/onami/lifecycle/core/LifeCycleModule.java * /onami/trunk/lifecycle/core/src/main/java/org/apache/onami/lifecycle/core/LifeCycleStageModule.java * /onami/trunk/lifecycle/core/src/main/java/org/apache/onami/lifecycle/core/NoOpStageableTypeMapper.java * /onami/trunk/lifecycle/core/src/main/java/org/apache/onami/lifecycle/core/Stageable.java * /onami/trunk/lifecycle/core/src/main/java/org/apache/onami/lifecycle/core/StageableMethod.java * /onami/trunk/lifecycle/core/src/main/java/org/apache/onami/lifecycle/core/StageableTypeMapper.java * /onami/trunk/lifecycle/core/src/test/java/org/apache/onami/lifecycle/core/DefaultStagerTestCase.java * /onami/trunk/lifecycle/core/src/test/java/org/apache/onami/lifecycle/core/MultiLifeCycleTestCase.java * /onami/trunk/lifecycle/standard/src/main/java/org/apache/onami/lifecycle/standard/AfterInjectionModule.java * /onami/trunk/lifecycle/standard/src/main/java/org/apache/onami/lifecycle/standard/DefaultDisposer.java * /onami/trunk/lifecycle/standard/src/main/java/org/apache/onami/lifecycle/standard/Disposable.java * /onami/trunk/lifecycle/standard/src/main/java/org/apache/onami/lifecycle/standard/DisposeHandler.java * /onami/trunk/lifecycle/standard/src/main/java/org/apache/onami/lifecycle/standard/DisposeModule.java * /onami/trunk/lifecycle/standard/src/main/java/org/apache/onami/lifecycle/standard/Disposer.java * /onami/trunk/lifecycle/standard/src/main/java/org/apache/onami/lifecycle/standard/StagerWrapper.java * /onami/trunk/lifecycle/standard/src/test/java/org/apache/onami/lifecycle/standard/DisposeModuleTestCase.java * /onami/trunk/lifecycle/standard/src/test/java/org/apache/onami/lifecycle/standard/DisposeTestCase.java * /onami/trunk/lifecycle/warmup/src/main/java/org/apache/onami/lifecycle/warmup/WarmUpModule.java * /onami/trunk/lifecycle/warmup/src/main/java/org/apache/onami/lifecycle/warmup/WarmUper.java * /onami/trunk/lifecycle/warmup/src/test/java/org/apachi/onami/lifecycle/warmup/TestWarmUpManager.java > Redesign the Modules structure in order to simply APIs usage > ------------------------------------------------------------ > > Key: ONAMI-102 > URL: https://issues.apache.org/jira/browse/ONAMI-102 > Project: Apache Onami > Issue Type: Improvement > Components: lifecycle > Affects Versions: lifecycle-0.2.0 > Reporter: Simone Tripodi > Assignee: Mikhail Mazursky > Fix For: lifecycle-0.2.0 > > Attachments: LifeCycleModule.java, LifeCycleStageModule.java > > > We already started discussing about it in the ML, but let's track progresses > on JIRA. > I detected few areas of approaching the lifecycle design: > * IIUC, we want to manage a series of annotations which identify the > sequence of staging steps in the lifecycle, so IMHO the > AbstractLifeCycleModule constructor with just one annotation has to > disappear; it would be nice to have a varargs array, which would simplify the > signature - and the usage from our users - but it would generate an annoying > warning to our users; IMHO it is still acceptable, but in case we don't find > an agreement here, Iterable should be the best way to pass the annotations > sequence to the module. > * ListBuilder: as already discussed, this sound too generic: I'd propose > something like AnnotationsLifecycleSequenceBuilder (maybe it is too verbose > :P) but I'd opt for something that gives a precise idea, not a generic one; > * Again on the list builder, as we discussed, IMHO the wrapped data > structure should be a LinkedHashSet: it preserves the sequence and makes > efficient the check for duplicates - if the list has a duplicate, I bet the > lifecycle event would be handled twice; > * Builder pattern: the way to get the builder is IMHO a little too verbose: > Builder.newBuilder() is not a pattern that makes me particularly happy, I'd > rather opt for inner class builder such as {{new ConcreteClass.Builder()}} > which is used in the AsyncHttpClient - WDYT? > I can even make a proposal, in order to show you better my ideas, and attach > a patch to discuss together -- This message was sent by Atlassian JIRA (v6.2#6252)