Hi,
I need some help to model my entities.
Scenario:
1.1 SubBase extends from Base.
1.2 Base's interface has 2 methods.
Base#doSomething()
Base#doSomethingElse()
Goal:
2.1 I want to query the repository for Base.
2.2 Then I want to be able to invoke both methods on it.
Invoking Base#doSomething() should be dispatched to the mixin for Base.
Invoking Base#doSomethingElse() should delegate to the mixin for SubBase.
Question:
Is this doable ?
Currently I'm getting an exception.
org.qi4j.spi.composite.ResolutionException: Could not find mixin for
method public abstract void rnd.Base.doSomethingElse() in composite
rnd.BaseComposite
at
org.qi4j.runtime.composite.CompositeResolver.getMixinForMethod(CompositeResolver.java:501)
at
org.qi4j.runtime.composite.CompositeResolver.getMixinsForMethods(CompositeResolver.java:464)
Full source:
--
public interface Base
{
void doSomething();
void doSomethingElse();
}
@Mixins( BaseMixin.class )
public interface BaseComposite
extends Base, EntityComposite
{
}
public abstract class BaseMixin
implements Base
{
public void doSomething()
{
System.out.println( "doSomething" );
}
public abstract void doSomethingElse();
}
public interface SubBase
extends Base
{
}
@Mixins( SubBaseMixin.class )
public interface SubBaseComposite
extends SubBase, Composite
{
}
public abstract class SubBaseMixin
extends BaseMixin
implements SubBase
{
@Override
public void doSomethingElse()
{
System.out.println( "doSomethingElse" );
}
}
Thanks
Regards,
Gavin
_______________________________________________
qi4j-dev mailing list
[email protected]
http://lists.ops4j.org/mailman/listinfo/qi4j-dev