I pushed the changes to the master branch. Thanks Antonio for reviewing the
solution.
The use case I described can now be resolved by using stack.exclude(facet).
This will ensure that the installed StackFacets always exclude the
specified facets.
Time for a beer, Forge 3.0.0.Beta2 ships tomorrow!
Em 12/01/2016 21:39, "George Gastaldi" <ggastald(a)redhat.com> escreveu:
Let me rephrase that: a custom stack facet that needs the JavaEE 7
dependency (thus automatically enabling the JavaEE7Facet that also is a
stack) but targeted for Wildfly Swarm where the JavaEE stack is somewhat
limited.
Maybe we could consider that the project stack is the sum of all included
facets in an installed StackFacet minus the excluded facets from the
installed StackFacets.
The most important question is: do we have a 1-n relationship between
Project and Stack (a project can be associated with many stacks)? Or is it
1-1?
Em 12/01/2016 20:18, "George Gastaldi" <ggastald(a)redhat.com> escreveu:
> Maybe if you have a custom stack that needs the JavaEE7 dependency but
> runs as a Microservice?
> Em 12/01/2016 20:04, "Lincoln Baxter, III" <lincolnbaxter(a)gmail.com>
> escreveu:
>
>> Hmmmmm.... Is there a down side to that scenario? (The stack being
>> activated?)
>>
>> Lincoln Baxter, III
>>
http://ocpsoft.org
>> "Simpler is better."
>>
>> On Mon, Jan 11, 2016 at 10:14 PM, George Gastaldi <ggastald(a)redhat.com>
>> wrote:
>>
>>> Yes, I did and I refactored the code removing the duplicated part.
>>> Thank you for reviewing it. I think that adding a new annotation
wouldn't
>>> help much, therefore I added a new protected method in
>>> AbstractProjectCommand to do the filtering (we can discuss this in the next
>>> meeting).
>>>
>>> However there is one thing that hit my mind: by making the
>>> JavaEE7FacetImpl a StackFacet, it doesn't matter if I have another
stack,
>>> the JavaEE 7 stack will always be activated when the JavaEE 7 dependencies
>>> are set in the pom.xml.
>>>
>>> Perhaps I should store the stack information used in the project as
>>> part of the project configuration (by using the ConfigurationFacet)?
>>> Em 12/01/2016 00:42, "Lincoln Baxter, III"
<lincolnbaxter(a)gmail.com>
>>> escreveu:
>>>
>>>> Did you see my comments on github?
>>>>
>>>> Lincoln Baxter, III
>>>>
http://ocpsoft.org
>>>> "Simpler is better."
>>>>
>>>> On Mon, Jan 11, 2016 at 4:53 PM, George Gastaldi
<ggastald(a)redhat.com>
>>>> wrote:
>>>>
>>>>> Hello Forgers!
>>>>>
>>>>> I would really appreciate your feedback on the Forge Stacks support.
>>>>> I have provided a pull-request (
>>>>>
https://github.com/forge/core/pull/592) that I want to merge still
>>>>> this week with the changes.
>>>>>
>>>>> I still need to document this feature, but it basically does what is
>>>>> described in
https://issues.jboss.org/browse/FORGE-2316
>>>>>
>>>>> Regarding to the implementation details, I created a StacksFacet
>>>>> interface (that's supposed to be implemented if you want to add a
new
>>>>> stack) that returns a Stack object (that is in charge of deciding if
a
>>>>> given ProjectFacet is supported). Stacks are built using the
StackBuilder
>>>>> class.
>>>>> I have added a --stack option in the project-new command that just
>>>>> calls the StackFacet.install() method. In order to find the facet
bound to
>>>>> the project it is simply a matter of calling:
>>>>>
>>>>> project.getFacet(StackFacet.class).
>>>>>
>>>>> Let me know if you have any questions. I'd be more than happy to
>>>>> answer.
>>>>>
>>>>> --
>>>>> *George Gastaldi*
>>>>>
>>>>>
https://about.me/gastaldi
>>>>>
>>>>> _______________________________________________
>>>>> forge-dev mailing list
>>>>> forge-dev(a)lists.jboss.org
>>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> forge-dev mailing list
>>>> forge-dev(a)lists.jboss.org
>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>>>>
>>>
>>> _______________________________________________
>>> forge-dev mailing list
>>> forge-dev(a)lists.jboss.org
>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>>>
>>
>>
>> _______________________________________________
>> forge-dev mailing list
>> forge-dev(a)lists.jboss.org
>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>>
>