On 18/01/2012, Geoffrey De Smet <ge0ffrey.spam(a)gmail.com> wrote:
throw new IllegalStateException("The factClass (" +
factClass + ")
has a property (" + property + ") that has a @Modifies annotation, but
the class isn't annotated with @PropSpecific.");
Use less words:
"In class (" + factClass + ") property (" + property + ") is
annotated
with @Modifies, but the class isn't annotated with @PropSpecific."
However, there's a good case for permitting this: testing to try both
ways, to track down a (user) bug,... Commenting out @PropSpecific is
just like turning off the main switch. If you get errors, you'll have
to mess with all the @Modifies, too.
2) @Modifies( "firstName, lastName" ) should not put the comma (,)
inside the quotes. Go for:
@Modifies( "firstName", "lastName" )
Then it must be:
@Modifies( { "firstName", "lastName" } )
3) What's the point of doing a @PropSpecific on a field instead of a class?
> declare Person
> @propSpecific
> firstName : String
The answer is: DRL syntax requires it this way.
Cheers
Wolfgang