Skip to content
Browse files

Added ch19- webservices

  • Loading branch information...
1 parent 8706828 commit 8b496205a62f4162ffb17b7822f2f8780cbc182a @tjweir committed
Showing with 178 additions and 207 deletions.
  1. +1 −0 .gitignore
  2. +3 −0 book.txt
  3. +2 −189 chapter06.lyx
  4. +15 −1 chapter07.lyx
  5. +27 −11 chapter11.lyx
  6. +35 −2 chapter14.lyx
  7. +18 −2 chapter15.lyx
  8. +3 −2 chapter16.lyx
  9. +74 −0 chapter19.lyx
View
1 .gitignore
@@ -5,3 +5,4 @@ target/
.svn/
*~
*.bak
+*#
View
3 book.txt
@@ -340,6 +340,9 @@ BOOK
18. Lift Widgets
- let's build one together, Marius' Sparklines
+19. Web Services
+- Building an API
+- REST
====== Appendices ======
A. Lift message handling
View
191 chapter06.lyx
@@ -43,200 +43,13 @@
AJAX and COMET
\end_layout
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Itemize
-Talk about:
-\end_layout
-
-\begin_layout Itemize
-Traditional Browser Server interaction
-\end_layout
-
-\begin_layout Itemize
-AJAX style interaction
-\end_layout
-
-\begin_deeper
-\begin_layout Itemize
-What is AJAX
-\end_layout
-
-\begin_layout Itemize
-AJAX example
-\end_layout
-
-\begin_layout Itemize
-AJAX in Lift
-\end_layout
-
-\end_deeper
-\begin_layout Itemize
-COMET style interaction
-\end_layout
-
-\begin_deeper
-\begin_layout Itemize
-What is COMET
-\end_layout
-
-\begin_layout Itemize
-COMET examples
-\end_layout
-
-\begin_layout Itemize
-COMET in Lift
-\end_layout
-
-\end_deeper
-\begin_layout Section
-Traditional Browser/Server Interaction
-\end_layout
-
-\begin_layout Standard
-AJAX and Comet are variations on the traditional model of web application
- interaction.
- The traditional model starts with the user making a request for a page,
- the server doing some amount of processing and then sending the appropriate
- response.
- This model is common today but models are evolving to include AJAX and
- Comet.
- AJAX and Comet differ in implementation of the traditional model.
- AJAX adds the concept of asynchronisity.
- This translates into a more responsive User Interface for a web application.
- If we take the example of adding a comment to a blog post, the traditional
- model has the user fill in a form, hit the submit button to send the request
- to the server, the server processes and add the comment and sends the updated
- blog post with the newly added comment.
- The AJAX model of this event would change such that the display of the
- new comment is not tied to the response from the server.
- After the user hits submit, the request is sent to the server and while
- it's being processed, the User Interface has responded by added the comment
- without the need of a full page request.
-
-\end_layout
-
-\begin_layout Standard
-Comet takes the AJAX model and adds to it with the idea of multiple users.
- The AJAX model increases the richness of the User Experience for a single
- client at a time.
- If we think about the previous example but add another person looking at
- the same page, they will not see the new comment until they refresh the
- post.
- Comet changes this by enabling the server to push to multiple clients,
- so the previous example changes such that when Client A hits submit, that
- new comment is pushed to Client B's browser, without the need to refresh
- the page.
-\end_layout
-
-\begin_layout Section
-AJAX in Lift
-\end_layout
-
-\begin_layout Standard
-\begin_inset Float figure
-wide false
-sideways false
-status open
-
-\begin_layout Standard
-\begin_inset Caption
-
-\begin_layout Standard
-\begin_inset Graphics
- filename ajax.png
- lyxscale 50
- scale 50
- subcaption
- subcaptionText "AJAX Application Model"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\begin_inset Note Note
-status open
-
-\begin_layout Standard
-Copyright Check Required
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset LatexCommand label
-name "fig:ajaxarch"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
\begin_layout Section
-COMET in Lift
-\end_layout
-
-\begin_layout Standard
-\begin_inset Float figure
-wide false
-sideways false
-status open
-
-\begin_layout Standard
-\begin_inset Caption
-
-\begin_layout Standard
-\begin_inset Graphics
- filename Comet.png
- lyxscale 50
- scale 50
- subcaption
- subcaptionText "COMET Application Model"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
\begin_inset Note Note
status open
\begin_layout Standard
-Copyright Check Required
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset LatexCommand label
-name "fig:cometarch"
-
-\end_inset
-
-
+Let's combine this chapter and Chapter 12.
+ Thoughts? -Ty
\end_layout
\end_inset
View
16 chapter07.lyx
@@ -40,7 +40,21 @@
\begin_body
\begin_layout Chapter
-Deployment
+Deployment
+\end_layout
+
+\begin_layout Standard
+\begin_inset Note Note
+status open
+
+\begin_layout Standard
+Useful to include? I can see dropping this.
+ -Ty
+\end_layout
+
+\end_inset
+
+
\end_layout
\begin_layout Standard
View
38 chapter11.lyx
@@ -48,28 +48,44 @@ JsCommands
JsCommands
\end_layout
-\begin_layout Standard
-* Integrated javascript handling without hard-coding it in templates
+\begin_layout Itemize
+Integrated javascript handling without hard-coding it in templates
\end_layout
-\begin_layout Standard
-* jQuery intro
+\begin_layout Itemize
+Further the goal of pushing logic out of templates
\end_layout
-\begin_layout Standard
-* Utility library that makes IE6 less ugly ;)
+\begin_layout Itemize
+jQuery intro: Steal from this: http://docs.jquery.com/How_jQuery_Works
\end_layout
-\begin_layout Standard
-* Powerful support for dynamic attributing of elements
+\begin_layout Itemize
+Utility library that makes IE6 less ugly ;)
\end_layout
-\begin_layout Standard
-* Based on CSS selectors
+\begin_layout Itemize
+Powerful support for dynamic attributing of elements
+\end_layout
+
+\begin_layout Itemize
+Based on CSS selectors
\end_layout
+\begin_layout Itemize
+Talk about Marius JS abstraction for YUI and jQuery
+\begin_inset Note Note
+status open
+
\begin_layout Standard
-* Talk about Marius JS abstraction
+I know nothing about YUI, except that v3 is supposed to be good.
+ :) jQuery for me.
+ -Ty
+\end_layout
+
+\end_inset
+
+
\end_layout
\end_body
View
37 chapter14.lyx
@@ -1,4 +1,4 @@
-#LyX 1.5.3 created this file. For more info see http://www.lyx.org/
+#LyX 1.5.6 created this file. For more info see http://www.lyx.org/
\lyxformat 276
\begin_document
\begin_header
@@ -43,10 +43,43 @@
Using Scala Actors
\end_layout
+\begin_layout Itemize
+Intro to Concurrency
+\end_layout
+
+\begin_layout Itemize
+Intro to Actors as a potential solution
+\end_layout
+
+\begin_layout Itemize
+Examples of Actor usage within Lift base
+\end_layout
+
+\begin_layout Itemize
+Examples of Actor usage on top of lift
+\end_layout
+
+\begin_deeper
+\begin_layout Itemize
+Simple: Mailer
+\end_layout
+
+\begin_layout Itemize
+Complex: Pulling RSS feeds?
+\begin_inset Note Note
+status open
+
\begin_layout Standard
-This is a broad topic, ask the committor list for opinions
+We need a better example.
+ -Ty
+\end_layout
+
+\end_inset
+
+
\end_layout
+\end_deeper
\begin_layout Standard
\end_layout
View
20 chapter15.lyx
@@ -1,4 +1,4 @@
-#LyX 1.5.3 created this file. For more info see http://www.lyx.org/
+#LyX 1.5.6 created this file. For more info see http://www.lyx.org/
\lyxformat 276
\begin_document
\begin_header
@@ -43,8 +43,24 @@
OpenID Integration
\end_layout
-\begin_layout Standard
+\begin_layout Itemize
+Rolled into lift-proper a while ago
+\end_layout
+
+\begin_layout Itemize
+Overview of OpenID, no politics :)
+\end_layout
+
+\begin_layout Itemize
+Request cycle of an OpenID auth
+\end_layout
+
+\begin_layout Itemize
+How to integrate into Lift
+\end_layout
+\begin_layout Itemize
+OpenIDProtoUser
\end_layout
\end_body
View
5 chapter16.lyx
@@ -1,4 +1,4 @@
-#LyX 1.5.3 created this file. For more info see http://www.lyx.org/
+#LyX 1.5.6 created this file. For more info see http://www.lyx.org/
\lyxformat 276
\begin_document
\begin_header
@@ -44,7 +44,8 @@ Lucene/Compass Integration
\end_layout
\begin_layout Standard
-
+Dave has some code in ESME for this, I'll ask if we can pinch it as a starting
+ point.
\end_layout
\end_body
View
74 chapter19.lyx
@@ -0,0 +1,74 @@
+#LyX 1.5.6 created this file. For more info see http://www.lyx.org/
+\lyxformat 276
+\begin_document
+\begin_header
+\textclass book
+\language english
+\inputencoding auto
+\font_roman default
+\font_sans default
+\font_typewriter default
+\font_default_family default
+\font_sc false
+\font_osf false
+\font_sf_scale 100
+\font_tt_scale 100
+\graphics default
+\paperfontsize default
+\spacing single
+\papersize default
+\use_geometry false
+\use_amsmath 1
+\use_esint 1
+\cite_engine basic
+\use_bibtopic false
+\paperorientation portrait
+\secnumdepth 3
+\tocdepth 3
+\paragraph_separation indent
+\defskip medskip
+\quotes_language english
+\papercolumns 1
+\papersides 1
+\paperpagestyle default
+\tracking_changes false
+\output_changes false
+\author ""
+\author ""
+\end_header
+
+\begin_body
+
+\begin_layout Chapter
+Web Services
+\end_layout
+
+\begin_layout Itemize
+REST
+\end_layout
+
+\begin_layout Itemize
+api demo from the wiki
+\end_layout
+
+\begin_layout Itemize
+Talk to SteveJ about using his demo from LiftOff: http://liftweb.net/index.php/How
+To_do_Web_Services
+\end_layout
+
+\begin_deeper
+\begin_layout Itemize
+Add a dispatcher to sit on the right urls
+\end_layout
+
+\begin_layout Itemize
+Add a class that has the methods that correspond to your API/Service
+\end_layout
+
+\end_deeper
+\begin_layout Standard
+
+\end_layout
+
+\end_body
+\end_document

0 comments on commit 8b49620

Please sign in to comment.
Something went wrong with that request. Please try again.