Changes for page WebObjects with Scala

Last modified by Ravi Mendis on 2011/05/10 02:10

From version 372.1
edited by Ravi Mendis
on 2009/12/08 19:04
Change comment: There is no comment for this version
To version 375.1
edited by Ravi Mendis
on 2009/12/08 19:10
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -157,12 +157,26 @@
157 157  
158 158  ==== Scala Annotations vs. Generic Accessors ====
159 159  
160 -An example of accessing variables in the following languages:
160 +An example of accessing variables in WebObjects with the following languages:
161 161  
162 162  |= |= Objective-C |= Java |= Scala
163 -|= getter | ##object name## | ##object.getName()## | ##object.name##
163 +|= getter | ##object name## | ##object.name()## | ##object.name##
164 164  |= setter | ##object setName:aName## | ##object.setName(aName)## | ##object.name = aName##
165 165  
166 +Of course in Java, we may generate EO classes with "get" methods as well in order to stick to convention.
167 +In scala there is an additional convenience we may use to produce "get" and "set" methods in addition to the default Scala accessors - Scala Annotations.
168 +
169 +E.g, in Main.scala we annotate our component keys with ##@BeanProperty## to automatically create public "set" and "get" methods.
170 +These variables can then be accessed via //KVC//.
171 +
172 +{{code}}
173 +
174 +@BeanProperty var username: String = ""
175 +@BeanProperty var password: String = ""
176 +@BeanProperty var isAssistantCheckboxVisible: Boolean = false
177 +
178 +{{/code}}
179 +
166 166  == How to Use Scala Collections with EOF ==
167 167  
168 168  One of the benefits of Scala is its very powerful, concurrency-ready collection classes - primarily ##List##, ##Map##, ##Seq## and ##Set##.