There are no fancy hidden things in this bean generator, so your Door would have an empty constructor and a constructor with two Room parameters:
Door door = new Door( fromRoom, toRoom ); Edson On Thu, Feb 27, 2014 at 11:24 AM, Matthew Versaggi <profversa...@gmail.com>wrote: > But what if you now have 2 declare statements in which one defines itself > in terms of the other ... > > // A room is also a thing > declare Room extends Thing > name : String @key > end > > One would instantiate an object like this: > Room room = new Room("office"); > > > // A door is a pathway between two rooms > declare Door extends Thing > fromRoom : Room @key > toRoom : Room @key > end > > How would one instantiate an object of 'Door' ? > > > > On Wed, Feb 26, 2014 at 5:11 PM, Edson Tirelli <ed.tire...@gmail.com>wrote: > >> >> Drools bytecode generates these beans without generating java source >> code (if you are using the declare, not the data modeller). Having said >> that, it is very simple: >> >> declare Here >> location: String @key >> end >> >> Generates a java class roughly equivalent to: >> >> public class Here implements Serializable { >> private String location; >> >> public Here() {} >> >> public Here( String location ) { >> this.location = location; >> } >> >> public String getLocation() { return location; } >> public void setLocation(String location) { this.location = location; } >> >> // generates a toString() >> >> // generates a hashCode()/equals() method that use the location's >> hashcode()/equals() >> } >> >> I did this from memory, but it is pretty much all it does. Nothing >> complex there, just a javabean really. >> >> The difference to not using @key is that the hashCode()/equals() >> methods would not take "location" in consideration, and in this case, since >> there are no other attributes, would then rely on system identity. >> >> Edson >> >> >> >> >> >> On Wed, Feb 26, 2014 at 2:23 PM, profversaggi <profversa...@gmail.com>wrote: >> >>> I was looking for something along the lines of a method of inspecting the >>> resulting code of any arbitrary @key declarations I might want to >>> deploy. Is >>> there such a way? >>> >>> >>> >>> -- >>> View this message in context: >>> http://drools.46999.n3.nabble.com/key-declarations-for-a-type-What-s-under-the-hood-tp4028343p4028346.html >>> Sent from the Drools: User forum mailing list archive at Nabble.com. >>> _______________________________________________ >>> rules-users mailing list >>> rules-users@lists.jboss.org >>> https://lists.jboss.org/mailman/listinfo/rules-users >>> >> >> >> >> -- >> Edson Tirelli >> Principal Software Engineer >> Red Hat Business Systems and Intelligence Group >> >> >> _______________________________________________ >> rules-users mailing list >> rules-users@lists.jboss.org >> https://lists.jboss.org/mailman/listinfo/rules-users >> > > > > -- > ######################################################### > Matthew R. Versaggi, President & CEO > Versaggi Information Systems, Inc. > Adjunct Professor of eBusiness DePaul University > Email: mailto:m...@versaggi.com, profversa...@gmail.com > M: 630-292-8422 > LinkedIn: http://www.linkedin.com/in/versaggi > ######################################################### > > _______________________________________________ > rules-users mailing list > rules-users@lists.jboss.org > https://lists.jboss.org/mailman/listinfo/rules-users > -- Edson Tirelli Principal Software Engineer Red Hat Business Systems and Intelligence Group
_______________________________________________ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users