[forge-dev] Issue with @FacetConstraint

Ivan St. Ivanov ivan.st.ivanov at gmail.com
Fri Feb 28 10:12:33 EST 2014


Hi Lincoln,

It's a class that extends AbstractFacet<Project> and implements
ProjectFacet. It has just one constructor:

    @Inject
    public SapHanaCloudFacet(DependencyInstaller dependencyInstaller) {
        this.dependencyInstaller = dependencyInstaller;
    }


Cheers,
Ivan


On Fri, Feb 28, 2014 at 4:22 PM, Lincoln Baxter, III <
lincolnbaxter at gmail.com> wrote:

> Is com.sap.cloud.forge.SapHanaCloudFacet an interface or a Class? If it
> is a Class or abstract Class, does it have a default constructor?
>
>
> On Fri, Feb 28, 2014 at 9:06 AM, Ivan St. Ivanov <ivan.st.ivanov at gmail.com
> > wrote:
>
>> Hi George,
>>
>> OK, I will try to reproduce it. Could you tell me what kind of test
>> should I write? Something that calls isEnabled or constraintsMet in a
>> situation that it is assumed that they are true?
>>
>> Cheers,
>> Ivan
>> On Feb 28, 2014 12:56 AM, "George Gastaldi" <ggastald at redhat.com> wrote:
>>
>>> Hi Ivan,
>>>
>>> This is because Furnace proxies the objects to avoid
>>> ClassCastExceptions. This shouldn't present a problem though. Are your
>>> addon dependencies correctly configured? I haven't seen your project yet,
>>> but if you could reproduce this error in a test that would be great.
>>>
>>> Em 27/02/2014, às 18:24, "Ivan St. Ivanov" <ivan.st.ivanov at gmail.com>
>>> escreveu:
>>>
>>> Hi folks,
>>>
>>> I am testing my Forge 2.0 addon for SAP HANA Cloud. One of my commands
>>> (the setup command) installs the special facet that I have developer
>>> (SapHanaCloudFacet). Another command is annotated
>>> with @FacetConstraint(SapHanaCloudFacet.class). Even after I do setup, the
>>> other command is not enabled.
>>>
>>> I started the debugger. The isInstalled method of my facet returned
>>> true. So I went on to see what happens with the isEnabled() method. I dug
>>> as deep as the AbstractFaceted::safeGetFacet(Class<F> type) method. What it
>>> does is: it searches all the installed facets and it checks whether the
>>> expected one is among them by calling type.isInstance(facet).
>>>
>>> The problem in my case is that all the facet objects are actually
>>> proxies. So I expect the type to be com.sap.cloud.forge.SapHanaCloudFacet,
>>> but it is actually something
>>> like org.jboss.forge.addon.facets.AbstractFacet_$$_javassist_904cc85e-43dd-404a-846c-ed4709d14dea.
>>> Eventually, the isInstance method returns false.
>>>
>>> Am I doing something wrong? The code of the addon can be found here:
>>> https://github.com/ivannov/addon-saphcp.
>>>
>>> Thanks,
>>> Ivan
>>>
>>> P.S. Did you, guys, bring anything new to the Windows shell? I am still
>>> using my Linux VM for Forge development.
>>>
>>> _______________________________________________
>>> forge-dev mailing list
>>> forge-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/forge-dev
>>>
>>>
>>> _______________________________________________
>>> forge-dev mailing list
>>> forge-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/forge-dev
>>>
>>
>> _______________________________________________
>> forge-dev mailing list
>> forge-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/forge-dev
>>
>
>
>
> --
> Lincoln Baxter, III
> http://ocpsoft.org
> "Simpler is better."
>
> _______________________________________________
> forge-dev mailing list
> forge-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/forge-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/forge-dev/attachments/20140228/6c400008/attachment-0001.html 


More information about the forge-dev mailing list