Turn on deprecation warnings and fix all warnings on the 'sbt compile' step. Warnings still exist for test classes.

git-svn-id: https://svn.apache.org/repos/asf/esme/trunk@1310306 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/server/build.sbt b/server/build.sbt
index 9a0ed7c..219219c 100644
--- a/server/build.sbt
+++ b/server/build.sbt
@@ -8,7 +8,10 @@
 
 organization := "Apache Software Foundation"
 
-scalaVersion := "2.9.1"      
+scalaVersion := "2.9.1"    
+
+//scalacOptions ++= Seq("-unchecked", "-deprecation")  
+scalacOptions ++= Seq("-deprecation") 
 
 seq(webSettings :_*)
 
@@ -76,6 +79,4 @@
 
 // Execute tests in the current project serially.
 // Tests from other projects may still run concurrently.
-//parallelExecution in Test := false
-
-//scalacOptions += "-Xprint:typer"
+parallelExecution in Test := false 
\ No newline at end of file
diff --git a/server/src/main/scala/JettyLauncher.scala b/server/src/main/scala/JettyLauncher.scala
index 703df9a..45c5dae 100644
--- a/server/src/main/scala/JettyLauncher.scala
+++ b/server/src/main/scala/JettyLauncher.scala
@@ -22,7 +22,7 @@
  import org.eclipse.jetty.server.nio.SelectChannelConnector
  import net.liftweb.http.LiftFilter
 
- object JettyLauncher extends Application {
+ object JettyLauncher extends App {
    val port = if(System.getenv("PORT") != null) System.getenv("PORT").toInt else 8080
    val server = new Server
    val scc = new SelectChannelConnector
diff --git a/server/src/main/scala/org/apache/esme/api/API2.scala b/server/src/main/scala/org/apache/esme/api/API2.scala
index f3e98ff..41872b6 100644
--- a/server/src/main/scala/org/apache/esme/api/API2.scala
+++ b/server/src/main/scala/org/apache/esme/api/API2.scala
@@ -250,7 +250,7 @@
       } yield {

         val token: AuthToken = AuthToken.create

           .user(user)

-          .description(S.param("description"))

+          .description(S.param("description").openOr(""))

           .saveMe

         (200,Map(),Full(tokenToXml(token)))

       }

@@ -351,7 +351,7 @@
                                        millis,

                                        xml match {

                                          case Full(x) => xml

-                                         case _ => Box({new Atom(S.param("metadata") openOr "")})

+                                         case _ => Full(new Atom(S.param("metadata").openOr("")))

                                        },

                                        from,

                                        S.param("replyto").map(toLong),

diff --git a/server/src/main/scala/org/apache/esme/external/RssFeed.scala b/server/src/main/scala/org/apache/esme/external/RssFeed.scala
index 552f10e..54ffa50 100755
--- a/server/src/main/scala/org/apache/esme/external/RssFeed.scala
+++ b/server/src/main/scala/org/apache/esme/external/RssFeed.scala
@@ -26,7 +26,7 @@
 import org.apache.esme.model.Message
 import org.apache.esme.actor.Distributor.{UserCreatedMessage=>Msg}
 
-import net.liftweb.common.Empty
+import net.liftweb.common.{Empty,Full,Box}
 
 object RssFeed {
   val dateFormats = List(new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z", US))
@@ -86,17 +86,16 @@
   */
 
   override def getLastSortedMessages(msgs: List[Msg], lastMessage: Option[Msg]): List[Msg] = {
-    import net.liftweb.common.Box
     lastMessage match {
       case Some(message: Msg) =>
         // a hack to format text identically- difference in urls & trailing whitespace
         val lastMessageText =
           Message.create.setTextAndTags(message.text, Nil, Empty).
-            choice((m: Message) => Box(m.body.trim))(Box("")).get
+            choice((m: Message) => Full(m.body.trim))(Full("")).get
             //get.body.trim
         msgs.takeWhile{ msg =>
           Message.create.setTextAndTags(msg.text, Nil, Empty).
-            choice((m: Message) => Box(m.body.trim))(Box("")).get != lastMessageText
+            choice((m: Message) => Full(m.body.trim))(Full("")).get != lastMessageText
             //get.body.trim != lastMessageText
         }
       case None => msgs
diff --git a/server/src/main/scala/org/apache/esme/model/UserAuth.scala b/server/src/main/scala/org/apache/esme/model/UserAuth.scala
index 99f3776..7c5ed58 100644
--- a/server/src/main/scala/org/apache/esme/model/UserAuth.scala
+++ b/server/src/main/scala/org/apache/esme/model/UserAuth.scala
@@ -128,7 +128,7 @@
 object UserPwdAuthModule extends AuthModule {
   def loginPresentation: Box[NodeSeq] = {
     val ldapBind : CssBindFunc = "#ldapEnabled [value]" #> (Props.getBool("ldap.enabled") openOr false)
-    TemplateFinder.findAnyTemplate("templates-hidden" :: "upw_login_form" :: Nil) match {
+    Templates("templates-hidden" :: "upw_login_form" :: Nil) match {
       case Full(tpl) => Full(ldapBind(tpl))
       case _ => Empty
     }
@@ -177,7 +177,7 @@
     private var email = ""
 
     def toForm: NodeSeq =
-    TemplateFinder.findAnyTemplate("templates-hidden" :: "upw_signup_form" :: Nil).map(
+    Templates("templates-hidden" :: "upw_signup_form" :: Nil).map(
       xhtml =>
       bind("signup", xhtml,
            "email" -%> SHtml.text(email, s => email = s.trim.toLowerCase),
@@ -218,8 +218,7 @@
 }
 
 object OpenIDAuthModule extends AuthModule {
-  def loginPresentation: Box[NodeSeq] =
-  TemplateFinder.findAnyTemplate("templates-hidden" :: "openid_login_form" :: Nil)
+  def loginPresentation: Box[NodeSeq] = Templates("templates-hidden" :: "openid_login_form" :: Nil)
 
   def moduleName: String = "openid"
 
@@ -328,7 +327,7 @@
     myLdapVendor
   }
 
-  @deprecated
+  @deprecated("Use getAttributesMap.","01-01-2012")
   def getAttrs(dn : String) : Map[String, List[String]] = {
     var attrsMap = Map.empty[String, List[String]]
     val attributes = getLDAPAttributes(dn)
@@ -501,7 +500,8 @@
           }
           case Empty => {
             S.error(S.?("base_user_err_unknown_creds"))
-          }
+          }         
+          case _ => {}  
         }
 
         S.redirectTo(from)
@@ -520,7 +520,7 @@
 
   override def isDefault = false
 
-  def loginPresentation: Box[NodeSeq] = TemplateFinder.findAnyTemplate("templates-hidden" :: "ldap_login_form" :: Nil)
+  def loginPresentation: Box[NodeSeq] = Templates("templates-hidden" :: "ldap_login_form" :: Nil)
 
   def moduleName: String = "ldap"
 
@@ -551,10 +551,11 @@
                 //TODO: There's no corresponding property in User's Mapper
                 //ldapAttrs.get("mail").flatMap(_.headOption.map(usr))
                 debug("Attributes from LDAP for user '%s'. Firstname: '%s', lastname: '%s'".format(name, usr.firstName, usr.lastName))
-                usr.save
+                usr.save   
               })
               UserAuth.create.authType(moduleName).user(usr).authKey(name).save
               logInUser(usr)
+            case _ => {}
           }
         } else {
           S.error(S.?("base_user_err_unknown_creds"))
diff --git a/server/src/main/scala/org/apache/esme/model/UserConvFollow.scala b/server/src/main/scala/org/apache/esme/model/UserConvFollow.scala
index ba29d21..26708d9 100644
--- a/server/src/main/scala/org/apache/esme/model/UserConvFollow.scala
+++ b/server/src/main/scala/org/apache/esme/model/UserConvFollow.scala
@@ -27,6 +27,6 @@
 class UserConvFollow extends LongKeyedMapper[UserConvFollow] with IdPK {  
   def getSingleton = UserConvFollow
 
-  object user extends LongMappedMapper(this, User)
-  object conversation extends LongMappedMapper(this, Message)
+  object user extends MappedLongForeignKey(this, User)
+  object conversation extends MappedLongForeignKey(this, Message)
 }
\ No newline at end of file
diff --git a/server/src/main/scala/org/apache/esme/model/UserTagFollow.scala b/server/src/main/scala/org/apache/esme/model/UserTagFollow.scala
index 3985246..3ec4aee 100644
--- a/server/src/main/scala/org/apache/esme/model/UserTagFollow.scala
+++ b/server/src/main/scala/org/apache/esme/model/UserTagFollow.scala
@@ -27,6 +27,6 @@
 class UserTagFollow extends LongKeyedMapper[UserTagFollow] with IdPK {  
   def getSingleton = UserTagFollow
 
-  object user extends LongMappedMapper(this, User)
-  object tag extends LongMappedMapper(this, Tag)
+  object user extends MappedLongForeignKey(this, User)
+  object tag extends MappedLongForeignKey(this, Tag)
 }
\ No newline at end of file